加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

用Keil-MDK开发TQ2440裸机程序入门教程(把裸机程序下载到Nor Fl

发布时间:2020-12-15 17:45:19 所属栏目:百科 来源:网络整理
导读:转载自http://www.voidcn.com/article/p-mrhirbax-gr.html 原文来自http://www.amobbs.com/thread-5281512-1-1.html 开发板也差不多买了半年了,以前照着教程用的是软件是ADS,在win7下老是崩溃,后来才知道ADS早就不提供支持了,ADS的公司怎样怎样了...(此处省

转载自http://www.voidcn.com/article/p-mrhirbax-gr.html

原文来自http://www.amobbs.com/thread-5281512-1-1.html

开发板也差不多买了半年了,以前照着教程用的是软件是ADS,在win7下老是崩溃,后来才知道ADS早就不提供支持了,ADS的公司怎样怎样了...(此处省略300..)
然后我就捣鼓着怎么转到KEIL上来,具体的例程代码我不会移植,不过裸机开发是没什么问题的了,在网上也找了些教程,因为我比较菜,然后教程又不是针对TQ2440的,也有针对TQ2440的,内容不全,前段时间一直看不懂,无奈,捣鼓了好长时间,终于明白了,然后就想写一份文档,造福一下和我一样用TQ2440的后人~
主要内容有:
1 准备工作
2.JLINK SDRAM调试
3.JLINK 烧写NOR Flash
4.生成下载到NAND的bin文件(这个不需要JLINK)


一. 准备工作:

1. JLINK驱动(如果只是打算生成下载到nand的bin文件的话就不用看这个了)

1). 首先安装驱动

2). 阅读此目录下的readme文档,用Flash.csv? ?支持更多Nor Flash的配置文件替换C:Program FilesSEGGERJLinkARM_V408eETCJFlash目录下的同名文件(假设您是把这个软件安装到C盘的)


(原文件名:1.png)?
对JLINK不熟可以参考TQ2440的使用手册第四章,TQ2440烧写说明,4.1.3 使用Jlink-Flasher烧写

2. 创建工程和编写代码


(原文件名:2.png)


(原文件名:3.png)
选择CPU,然后点OK


(原文件名:4.png)复制启动代码到我的工程文件里,选是,


(原文件名:5.png)然后工程就建好了


(原文件名:6.png)启动代码就在S3C2440.s里面,在Keil里面是可以可视化自由配置的,打开S3C2440.s你会看到很多的汇编代码,呵呵,我也不喜欢汇编. 然后点下面的配置向导


(原文件名:7.jpg)先都打个勾吧,其实我也不知道这样配置好不好,sans-serif; font-size:13.333333969116211px; line-height:18.99305534362793px">


(原文件名:8.jpg)
对了,LED对应的IO口要设置为输出


(原文件名:9.png)建个main.c文件,写你的工程代码咯~这里就以闪烁灯为例啦
新建文件,其实不太想说这个了,考虑到可能还真有人没用过Keil的...


(原文件名:10.png)点保存,文件名为main.c



好了,开始写代码了,噢,还要先把main.c文件添加到项目里来咧

?选择main.c,鼠标单击Add


??工程目录里就有这个东东了


下面是代码:
注意到我在第一句打了个断点,之前调试的时候上系统启动后自动在main函数入口停下来的指令不管用,所以就手动加了个断点了,然后就可以保存文件啦


(原文件名:1.png)?
设置工程:


(原文件名:1.png)?
这一项玩过51的就再熟不过了


(原文件名:1.png)?
这个设置不重要,习惯而已


(原文件名:1.png)?
准备完啦,继续~



二. JLINK在SDRAM中调试TQ2440

用SDRAM调试是一个不错的方式,可以有效的减少Flash的擦写,方便又快捷,不啰嗦了,直接进入正题~
在SDRAM里面调试的时候是这样设置的,主要是ROM1和RAM1的起始地址


(原文件名:1.png)?


(原文件名:1.png)?
对了,还要复制一个初始化文件,??文件在Keil的安装目录里找,我这里是D:Program FilesKeilARMBoardsSamsungS3C2440RTX_BlinkyExt_RAM.ini
直接复制到你的工程目录下,然后还要做一点修改,如果不修改,就调试不了,会出现这样的情况


(原文件名:1.png)?
工程输出的.axf文件(我也不清楚是用来干啥的)在工程目录下的Output文件夹里,所以可以用编辑工具(记事本就行了)打开来这样修改:


(原文件名:1.png)?
然后添加这个文件,


(原文件名:1.png)?
呃,突然发现少做了一件事...这样就OK了,设置utilities这里添加了烧写算法的,其实在烧NOR Flash那里我才需要这个,这个算法是不能擦除的,但是这里我找不到合适的算法,就用这个相近的了,要擦除的话就用JFlash。

Note:update target before degugging de 选项是不选的,我第一眼看以为是要勾上的!!!!



(原文件名:1.png)?
现在可以按F7编译了,然后用你的JLINK连接好TQ2440开发板和你的电脑,TQ2440要先上电哦~最后在KEIL里面点调试就行了~?


(原文件名:1.png)?
然后你就可以单步调试什么的了,主要是由这里控制的,我就不多说了,自己捣鼓捣鼓去吧~


(原文件名:1.png)?



三. 烧写NOR Flash

烧写NOR Flash时要这样配置:


(原文件名:1.png)?
然后是这个,再啰嗦一下,设置utilities,这里添加了烧写算法的,这个算法是只能用来编程不能擦除的,要擦除的话就用JFlash


(原文件名:1.png)?
按F7编译,然后打开JFlash,JFlash的设置参考TQ2440的用户手册哈,然后


(原文件名:1.png)?
擦除...


(原文件名:1.png)?
回到MDK,LOAD,就可以看到下载成功了


(原文件名:1.png)?



四. 生成下载到NAND的bin文件

首先,TQ2440开发板出厂的时候是有烧有BootLoader的,我也不懂BootLoader的原理,所以直接用那个就行了. 如果刚刚烧过NOR Flash,那么BootLoader就没了,要重新烧进去了,这个可以参考TQ2440的使用手册第四章,4.1.3 使用Jlink-Flasher烧写

然后这个是设置


(原文件名:1.png)?
接着,让keil在生成后运行生成bin文件的用户程序,


(原文件名:1.png)? 然后编译就可以生成需要的bin文件了,就在你的工程目录下,下载的方式和TQ2440裸奔教程那里一开始说的是一样的,用secureCRT和DNW,我就不多说啦 ^_^

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读