下载 >  移动开发 >  Flash > DSP6713例程 FLASH

DSP6713例程 FLASH 评分:

/********************************************************************************\ \* DEC6713_FLASH.c V2.00 *\ \* Copyright 2004 by SEED Electronic Technology LTD. *\ \* All rights reserved. SEED Electronic Technology LTD. *\ \* Restricted rights to use, duplicate or disclose this code are *\ \* granted through contract. *\ \* Designed by: Hongshuai.Li \* Discription: Erase, write and read the whole chip. \* Date: Modified 05.10.2005 *\ \********************************************************************************/ #include <stdio.h> #include <csl.h> #include <csl_irq.h> #include <csl_chip.h> #include <csl_emif.h> #include <csl_irq.h> #include "DEC6713_FLASH.h" #include <math.h> /********************************************************************************/ Uint32 i; Uint16 TempData; Uint32 Src_StartAdd; Uint32 Dst_StartAdd; extern far void vectors(); /********************************************************************************/ /********************************************************************************/ void main() { Src_StartAdd = 0x90000000; /* Initialize CSL, must when using. */ CSL_init(); /* Initialize DEC6713 board. */ DEC6713_init(); /* Configure interrupt. */ IRQ_setVecs(vectors); IRQ_nmiEnable(); IRQ_globalEnable(); /* Erase flash memory. */ Flash_Erase(0x90000000,0x10); printf("\nErase flash ok."); /* Write flash memory. */ for(i=0;i<0x40000;i++) { Flash_Writes(Src_StartAdd+2*i,fmod(i,0x10000)); } printf("\nWrite flash ok."); /* Read flash memory. */ for(i=0;i<0x40000;i++) { TempData = Flash_Reads(Src_StartAdd+2*i); if(TempData != fmod(i,0x10000)) { printf("\n Testing is Failure!"); printf("\nAddress 0x%x is error!",i); exit(0); } } printf("\nOpereation is success."); } /********************************************************************************\ \* Flash function difine. *\ \********************************************************************************/ /********************************************************************************\ \* Flash erase function. *\ \********************************************************************************/ Uint32 Flash_Erase(Uint32 addr,Uint16 type) { Uint32 i,j; *FLASH_5555 = FLASH_UL1; //first *FLASH_2AAA = FLASH_UL2; //second *FLASH_5555 = FLASH_UL3; //third *FLASH_5555 = FLASH_UL4; *FLASH_2AAA = FLASH_UL5; switch(type) { case 0x50: //block erase *(Uint16 *)addr = type; while((*(Uint16 *)addr & 0x80) != 0x80); for(i = 0; i < BLOCK_SIZE; i++) { if(*(Uint16 *)(addr + i) != 0xffff) { j = 0; break; } } j = 1; break; case 0x30: //sector erase *(Uint16 *)addr = type; while((*(Uint16 *)addr & 0x80) != 0x80); for(i = 0; i < SECTOR_SIZE; i++) { if(*(Uint16 *)(addr + i) != 0xffff) { j = 0; break; } } j = 1; break; case 0x10: //chip erase // for(;;) // { *FLASH_5555 = type; // } while((*FLASH_5555 & 0x80) != 0x80); for(i = 0; i < CHIP_SIZE; i++) { if(*(Uint16 *)(addr + i) != 0xffff) { j = 0; break; } } j = 1; break; default: break; } return (j); } /********************************************************************************\ \* Write a single data. *\ \********************************************************************************/ void Flash_Writes(Uint32 addr,Uint16 data) { //Uint16 TempData=0; *FLASH_5555 = FLASH_UL1; *FLASH_2AAA = FLASH_UL2; *FLASH_5555 = FLASH_PROGRAM; //for(;;) //{ *(Uint16 *)addr = data; //TempData = *(Uint16 *)(addr); //} //TempData = *(Uint16 *)(addr); while(*(Uint16 *)addr != data); } /********************************************************************************\ \* Write the certain length data. *\ \********************************************************************************/ void Flash_Writem(Uint32 addr,Uint16 *ptr,Uint32 length) { Uint32 i; for(i = 0; i < length; i++) { // for(;;) // { Flash_Writes(addr+2*i,*(ptr+i)); // } } } /********************************************************************************\ \* Read a single data. *\ \********************************************************************************/ Uint32 Flash_Reads(Uint32 addr) { return (*(Uint16 *)addr); } /********************************************************************************\ \* Read the certain length data. *\ \********************************************************************************/ void Flash_Readm(Uint32 addr,Uint16 *ptr,Uint32 length) { Uint32 i; for(i = 0; i < length; i++) { *(ptr + i) = Flash_Reads(addr+2*i); } } /********************************************************************************\ \* End of DEC6713_FLASH.C *\ \********************************************************************************/
...展开详情收缩
2011-02-22 上传大小:5KB
分享
收藏 (1) 举报
DSP6713 FLASH程序烧写

DSP6713 FLASH程序烧写 包括烧写程序 说明文档,原理说明等

立即下载
DSP6713例程

DSP6713 官网例程 C语言 包括基本的BOOT,FLASH,UART程序 很实用的官网例程,觉得值得分享给大家!

立即下载
DSP2812 例程

这是DSP2812的例程,包括定时器,事件管理器,flash,外部中断,AD采样

立即下载
f2833x系列DSP官方例程

包含PWM、GPIO、SPI、I2c、TIMER、AD、Flash、dma、、中断、等官方开发历程

立即下载
DSP 28335 Flash烧写例程

绝对的,本人板子上跑的,初学者可以看看,有意义的

立即下载
DSP281x模板及例程

DSP281x模板及例程, sprc097_281x 例程程序介绍 主要特点 高性能价格比 更加完备的硬件功能,丰富的软件例程 芯片支持C语言编写,编译率高达90% 系统资源 32位 TMS320F2812 150MHz 片内flash 128K×16 bit(128位密码保护)18K×16 bit 高速RAM 片内12位高速A/D ,16路 80ns转换时间,0~3V量程 Boot ROM:4K×16 bit OTP ROM:1K×16 bit 片外64K×16 bit RAM(可扩至512K×16 bit) 提供看门狗电路,电源监视,上电复位、手动复位 16 路PW

立即下载
C2000 DSP Tms320f28027 例程

C2000 DSP Tms320f28027 TI 官方例程 V127版本 for CCSV4 & V5

立即下载
TI 2812 DSP的片上外围资源例程

内部ADC开发应用,eCAN通信应用,sPWM波开发应用,ups不间断电源数字控制,flash_API系统在线调试

立即下载
DSP28335通过SPI读写SD卡例程

一个完整的DSP28335通过自带SPI接口读写SD卡例程,支持FAT32文件系统,最大兼容32GSD卡。在CCS3.3下编译运行没有问题。

立即下载
DSP_28377D的CAN通讯代码例程

Ti的C28x的DSP_28377D的CAN通讯代码例程,里面有IO口、故障、波特率、发送、接收的函数

立即下载
DSP2812在线更新FLASH程序方法

DSP2812在线更新FLASH程序代码,TI库,使用说明

立即下载
DSP28335片外 FLASH 读写实验CCS工程

该实验程序先向外部flash的0x200000~0x20FFFF分别写入0xAAAA和0x5555再读出,每一个存储空间逐一比较是否正确,如果一致说明没有问题,最后才写入自然数。

立即下载
TMS570LS0432片内FLASH读写例程(自建工程)

自建工程,用于测试TMS570LS0432片内FLASH BANK0 读写操作。经过实测,读写正常,可直接下载测试。

立即下载
TMS320C6713+DSP原理与应用实例_12281642

TMS320C6713+DSP原理与应用实例_12281642,需要的请下载

立即下载
28335芯片 例程

压缩文件内 包含了电路原理图 便于理解 绝对可以运行,适合初学者

立即下载
关于DSP2812复位、初始化、CMD文件编写、程序执行空间、FLASH烧写等的总结

关于DSP2812复位、初始化、CMD文件编写、程序执行空间、FLASH烧写等的总结

立即下载
TMS320C6747软件例程

各种例程包括FLASH,SDRAM,FLUSH烧写,串口,PWM,,,

立即下载
TMSC6678网络模块驱动例程

TMSC6678网络模块驱动例程,官方的MCSDK和NDK中都有该例程。

立即下载
南京研旭28335 CCS3.3 权威例程

南京研旭的CCS3.3 28335 DSP开发例程。 例程极其丰富,应用广泛,价值很高。 共计58个例程 内容有GPIO、TIMER、WATCHDOG、CAP、QEP、CAN、SPI、MCBSP、I2C、AD、DA、PWM、UCOS、FFT、FIR、EEROM、RAM、FLASH、DMA、TCP等等

立即下载
TMS320C6657例程程序

包括EMIF、DDR、UART、FLASH、I2C、TIME等程序,其中包含了CSL_include和KEYSTONE_include两个重要的库文件

立即下载

热点文章

下载码下载
做任务获取下载码
取消 提交下载码
img

spring mvc+mybatis+mysql+maven+bootstrap 整合实现增删查改简单实例.zip

资源所需积分/C币 当前拥有积分 当前拥有C币
5 0 0
点击完成任务获取下载码
输入下载码
为了良好体验,不建议使用迅雷下载
img

DSP6713例程 FLASH

会员到期时间: 剩余下载个数: 剩余C币: 剩余积分:0
为了良好体验,不建议使用迅雷下载
VIP下载
您今日下载次数已达上限(为了良好下载体验及使用,每位用户24小时之内最多可下载20个资源)

积分不足!

资源所需积分/C币 当前拥有积分
您可以选择
开通VIP
4000万
程序员的必选
600万
绿色安全资源
现在开通
立省522元
或者
购买C币兑换积分 C币抽奖
img

资源所需积分/C币 当前拥有积分 当前拥有C币
5 4 45
为了良好体验,不建议使用迅雷下载
确认下载
img

资源所需积分/C币 当前拥有积分 当前拥有C币
5 0 0
为了良好体验,不建议使用迅雷下载
VIP和C币套餐优惠
img

资源所需积分/C币 当前拥有积分 当前拥有C币
5 4 45
您的积分不足,将扣除 10 C币
为了良好体验,不建议使用迅雷下载
确认下载
下载
您还未下载过该资源
无法举报自己的资源

兑换成功

你当前的下载分为234开始下载资源
你还不是VIP会员
开通VIP会员权限,免积分下载
立即开通

你下载资源过于频繁,请输入验证码

您因违反CSDN下载频道规则而被锁定帐户,如有疑问,请联络:webmaster@csdn.net!

举报

  • 举报人:
  • 被举报人:
  • *类型:
    • *投诉人姓名:
    • *投诉人联系方式:
    • *版权证明:
  • *详细原因: