欢迎来到天天文库
浏览记录
ID:35342158
大小:62.56 KB
页数:5页
时间:2019-03-23
《实验6:cc2530flash读写操作实验》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、计算机科学与技术学院实验报告课程名称:无线传感器网络原理与应用实验六CC2530Flash读写实验一、实验目的常握CC2530芯片Flash的读写操作,同时为后面的综合实验做准备。二、实验内容使用DMA写Flash,将源缓冲区的数据使用DMA写到Flash的地址0x01000处,然后读取到目的缓冲区中,使用串口查看。三、实验环境硬件:鼎轩WSN实验箱(汇聚网关、烧录线、平行串口线),PC机;软件:1AR软件,串口助手。四、实验步』1)打开鼎轩WSN实验箱,检查实验箱设备,确保实验箱设备完整、连接无课后,连接电源线,打开电源开关;2)用烧录线连接汇聚网关上的烧录接口与电脑USB接口;3)点击
2、目录(CC2530simpledemocc2530-simple-demoFlashDMAWrite)下的工程图标Flash_DMA_Write.eww打开工程;4)点击IAR中的图标按钮编译程序;5)完成编译后若没冇错误信息,将实验箱节点编程开关上汇聚网关开关拨上去,点击调试并下载按钮将程序下载到汇聚网关上;6)用串口线连接汇聚网关上的数据输出口和PC机USB接口,打开串口助手,正确选择串口号(视具体电脑而定)、波特率(9600),其他配置如下图都不更改。打开串口,可以看到输岀的结果,如下图:I凤SSCOM3.2(作看杲小匡(丁丁),主页http://wv/w.mcu51.com.
3、Email:me...1=3丨回]destdata!>sourcedata!▼打开文件1反件茗发送文件丨保存窗口」清除窗口
4、厂HEX显示串口号
5、C0M4二巒关闭串口1帮助1WWW.MCU51.COM扩展」波特率数据位偉止位校验位流控制9600▼1厂DTR厂RTS★大虾开发板已推出,敬请关注!!★宴方创PCB样机快棒计价器.★讲入大虾电子网的大虾谕坛!I门厂走时发送z庆厂HEX发送厂发送新行None▼丰符串输入框:发送INoneBI/ww.mcu51.corS:0R:26COM4已打开9600bps8CTS=ODSR=ORL7)改变写入的地址,或是写入的数据,重新试验,深入理解程序中的读写函
6、数。程序代码程序源文件路径为/cc2530-simple-demo/DMA_Test/Flash.DMADMAInitialization"律青律存仃腐津存存诒穴律挣戶"存*/voidFlash_DMA_Config(char*srcAddressruint_16length){一DMA_DESCdmaConfig;//DMkBE置数扼绪构SET^WORD(dmaConfig7、的地址dmaConfig.VLEN=0;//传編数据长受有"挖制SET_WORD(dmaConfig8、RIORITY=2;//DMA高优先级SET^WORD(DMA0CFGHfDMA0CFGLr&dmaConfig);DMAARM=//口宓进入工作通道0"闪存擦除八擦除指定地址的内容voidFlashErase(uint32address)uint_8erase_page_num=address>>PAGE_SHIFT;uint_8tGmp_EA=¥4;//保存全扃中断喪至EA=0;while(FCTL&0x80);/*轮询ECTL.BQSY并等待直到闪存拴詡孚浪冬好"FADDRH=erasQ_page_num«1;/*通过£132厂:口位选择闪存贡面*/FCTL9、=0xC<;7*jSSF10、CTL.ERASE位启动员面镇除while(FCTL&0x30);八巧迭的:等待直到闪存写完成C20ms)”/EA=temp_EA;//fQjflash指定地址芍人指定内蓉voidFlashWrire(uint_32destination^char*source^uint_16length){-一uint_16address;uint_8old_ea#old_map;address=destination»2;SET_W
7、的地址dmaConfig.VLEN=0;//传編数据长受有"挖制SET_WORD(dmaConfig8、RIORITY=2;//DMA高优先级SET^WORD(DMA0CFGHfDMA0CFGLr&dmaConfig);DMAARM=//口宓进入工作通道0"闪存擦除八擦除指定地址的内容voidFlashErase(uint32address)uint_8erase_page_num=address>>PAGE_SHIFT;uint_8tGmp_EA=¥4;//保存全扃中断喪至EA=0;while(FCTL&0x80);/*轮询ECTL.BQSY并等待直到闪存拴詡孚浪冬好"FADDRH=erasQ_page_num«1;/*通过£132厂:口位选择闪存贡面*/FCTL9、=0xC<;7*jSSF10、CTL.ERASE位启动员面镇除while(FCTL&0x30);八巧迭的:等待直到闪存写完成C20ms)”/EA=temp_EA;//fQjflash指定地址芍人指定内蓉voidFlashWrire(uint_32destination^char*source^uint_16length){-一uint_16address;uint_8old_ea#old_map;address=destination»2;SET_W
8、RIORITY=2;//DMA高优先级SET^WORD(DMA0CFGHfDMA0CFGLr&dmaConfig);DMAARM=//口宓进入工作通道0"闪存擦除八擦除指定地址的内容voidFlashErase(uint32address)uint_8erase_page_num=address>>PAGE_SHIFT;uint_8tGmp_EA=¥4;//保存全扃中断喪至EA=0;while(FCTL&0x80);/*轮询ECTL.BQSY并等待直到闪存拴詡孚浪冬好"FADDRH=erasQ_page_num«1;/*通过£132厂:口位选择闪存贡面*/FCTL
9、=0xC<;7*jSSF
10、CTL.ERASE位启动员面镇除while(FCTL&0x30);八巧迭的:等待直到闪存写完成C20ms)”/EA=temp_EA;//fQjflash指定地址芍人指定内蓉voidFlashWrire(uint_32destination^char*source^uint_16length){-一uint_16address;uint_8old_ea#old_map;address=destination»2;SET_W
此文档下载收益归作者所有