一品国精与二品国精的溯源与非凡

核心内容摘要

从“舔狗”到“啊你TM别舔了”:一场关于当代社交尊严的赛博觉醒
Fulao:不止于传承,更是新生——探寻传统工艺的现代密码

《睫毛膏》:一抹浓黑,勾勒出怎样的美国梦境

(

实验平台普中DSP28335开发板在前面章节那些实验我们都是将程序烧写到芯片 RAM 中运行调试的 我们知道 RAM 中存储的东西在掉电后是会丢失的 也就是说程序烧入到 RAM 中运行 如果系统电源关闭后再开启 之前下载的程序是不会再运行的。

如果我们做好的产品给客户不可能还让客户像我们这样使用 DSP 仿真器去烧录程序运行 所以非常有必要学习如何将程序烧入到芯片 FLASH 中 这样即使掉电也不会丢失。

本章就来介绍如何将程序烧入到芯片 FLASH 中。

本章所要实现的功能是 在串口通信实验程序基础上改成 FLASH 模式 在定时器 0 中断中控制 D1 指示灯间隔 200ms 闪烁。

本章分为如下几部分内容

3

1 配置成 FLASH 模式步骤

3

2 硬件设计

3

3 软件设计

31.

1 主函数

3

4 实验现象

3

1 配置成 FLASH 模式步骤①将前面定时器实验章节的程序“

_DSP2833x_SCI_echoback” 复制一份 重新命名为“

_DSP2833x_Flash_led” 。

如下②打开 CCS 软件 导入工程“

_DSP2833x_Flash_led” 并将 CCS软件工程名修改为实验名称 这个在最开始实验章节就有介绍。

如下所示③将工程目录“DSP2833x_Libraries” 下的 28335_RAM_lnk.cmd 删除 然后从 TI 提供 给我 们的 库文件 中把 “ F

cmd” 拷贝 到现 在实 验文件 夹“DSP2833x_Libraries” 目录下。

如下在工程目录下自动将“F

cmd” 文件更新进来 如下该文件是对 FLASH 模式的配置 TI 公司已经给我们配置好了 一般我们不需要更改。

④在 main 函数开始处添加 FLASH 模式配置的必须代码 如下//复制对时间敏感代码和 FLASH 配置代码到 RAM 中 // 包括 FLASH 初始化函数 InitFlash(); // 链 接 后 将 产 生 RamfuncsLoadStart, RamfuncsLoadEnd, 和 RamfuncsRunStart // 参数. 请参考 F

cmd 文件 MemCopy(RamfuncsLoadStart, RamfuncsLoadEnd, RamfuncsRunStart); // 调用 FLASH 初始化函数来设置 flash 等待状态 // 这个函数必须在 RAM 中运行 InitFlash();上述两条语句是在使用 FLASH 模式必要的 通过这两条语句以及 F

cmd文件即可将程序烧入到芯片的 FLASH 中 这样程序断电后也不会丢失。

至此 我们就介绍完了如何将 RAM 调试程序修改成 FLASH 程序 大家只要按照上述步骤完成即可 重点是第

4 步。

3

2 硬件设计本实验使用到硬件资源如下1 D1 指示灯2 TIM03 RS232 模块LED 灯、 RS232 模块电路在前面章节已介绍 这里就不多说 至于 TIM0 它是F28335 芯片内部外设资源 只需通过软件配置即可使用。

3

3 软件设计

31.

1 主函数其他代码与串口通信实验一样 只是在 main 函数开始处增加了 FLASH 初始化代码 main 函数代码如下#include DSP2833x_Device.h // DSP2833x Headerfile Include File #include DSP2833x_Examples.h // DSP2833x Examples Include File #include leds.h #include time.h #include uart.h #include stdio.h /******************************************************************************* * 函 数 名 : main * 函数功能 : 主函数 * 输 入 : 无 * 输 出 : 无 *******************************************************************************/ void main() { Uint16 i0; InitSysCtrl(); InitPieCtrl(); IER 0x0000; IFR 0x0000; InitPieVectTable(); //复制对时间敏感代码和FLASH配置代码到RAM中 // 包括FLASH初始化函数 InitFlash(); // 链接后将产生 RamfuncsLoadStart, RamfuncsLoadEnd, 和RamfuncsRunStart // 参数. 请参考 F

cmd 文件 MemCopy(RamfuncsLoadStart, RamfuncsLoadEnd, RamfuncsRunStart); // 调用FLASH初始化函数来设置flash等待状态 // 这个函数必须在RAM中运行 InitFlash(); LED_Init(); TIM0_Init(150,

;//200ms UARTa_Init(

; while(

{ } }

3

4 实验现象使用仿真器将开发板和电脑连接成功后 把编写好的程序编译后 如果没有报错即可将点击仿真调试 程序即会写入到芯片的 FLASH 内 运行结果是 D1指示灯间隔 200ms 闪烁。

当系统断电后再打开 程序仍然会运行 因为我们已经将程序烧入到芯片内 FLASH 中。

www.mogu3.gov.cn-www.mogu3.gov.cn最新版N.15.29.74-2285安卓网应用

百度百家号客服电话人工服务

123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123