根据韦东山老师的视频做led灯点亮的试验,写好汇编代码和makefile后上传到ubuntu内,编译无法通过,先后出现如下几个问题:
1. 未找到makefile,看程序发现,makefile的文件命不正确,导致找不到makefile,使用mv命令修改文件命为makefile;
2. makefile:2: *** missing separator. Stop. 这个错误上网查找说makefile里边的命令行必须以tab符开头,我写的是空格,修改后继续编译;
3. led.s:0: Warning: end of file not at end of a line; newline inserted,此处警告是说汇编文件必须以空行为文件结尾,增加空行后继续;
4. arm-linux-ld: warning: cannot find entry symbol _start; defaulting to 00000000,上网查找说,ARM的汇编必须有_start作为程序的入口,我写的是_Start,修改i后继续;
5. 编译通过,无错误无警告。下载程序到板子上,结果灯点不亮。
6. 继续鼓捣,发现是程序烧写错误,minitool烧写后直接运行,点亮正常。
由于C语言单片机开发我做好多年了,C语言的灯试验就不做了。