![]() |
|
||||||||||||||
| . 网站首页 . 新闻 . 新品 . 方案 . 专访 . 活动 . DSP . EDA . 评测室 . 技术文库 . 会员区 . 商城 . 服务导航 . 邮购 . 资源 . | ||
|
||
|
|||||
| DSP5402读写SST39VF400A之C++源代码 | |||||
作者:61IC 文章来源:本站原创 点击数: 更新时间:2006-7-31 ![]() |
|||||
|
{ // SREG->SWWSR = 0x3f09; SREG->SWWSR = 0x7f09; // SREG->SWCR = 0; // _delay_loop_(10); FlashRomInit(); } void FlashRomObj::FlashRomInit(void) { MakerId = 0; DeviceId = 0; FlashReset(); if (!FlashId()) return; FlashReset(); ChipErase(); FlashReset(); FlashWrite(&FlashRom8000, 0x12); FlashReset(); FlashWrite(&FlashRom8001, 0x34); FlashReset(); //return; if ((FlashRom8000 & 0xff) == 0x12) { // FlashWrite(&FlashRomStart, 0xff55); __nop(); __nop(); } else { __nop(); __nop(); // FlashWrite(&FlashRomStart, 0xffaa); } if ((FlashRom8001 & 0xff) == 0x34) { // FlashWrite(&FlashRomStart, 0xff55); __nop(); __nop(); } else { __nop(); __nop(); // FlashWrite(&FlashRomStart, 0xffaa); } FlashReset(); } void FlashRomObj::FlashReset(void) { FlashRom5555 = 0xaa; __nop(); __nop(); FlashRom2AAA = 0x55; __nop(); __nop(); FlashRom5555 = 0xf0; FlashWait(); } bool FlashRomObj::FlashId(void) { bool flag; FlashRom5555 = 0xaa; __nop(); __nop(); FlashRom2AAA = 0x55; __nop(); __nop(); FlashRom5555 = 0x90; FlashWait(); MakerId = FlashRomMaker & 0xff; __nop(); __nop(); DeviceId = FlashRomDevice & 0xff; __nop(); __nop(); flag = (MakerId == 0xbf) && (DeviceId == 0x80); FlashReset(); return flag; } void FlashRomObj::ChipErase(void) { FlashRom5555 = 0xaa; __nop(); __nop(); FlashRom2AAA = 0x55; __nop(); __nop(); FlashRom5555 = 0x80; __nop(); __nop(); FlashRom5555 = 0xaa; __nop(); __nop(); FlashRom2AAA = 0x55; __nop(); __nop(); FlashRom5555 = 0x10; FlashWait(); } void FlashRomObj::FlashWrite(unsigned int * address, unsigned int val) { FlashRom5555 = 0xaa; __nop(); __nop(); FlashRom2AAA = 0x55; __nop(); __nop(); FlashRom5555 = 0xa0; __nop(); __nop(); *address = val; FlashWait(); } void FlashRomObj::FlashWait(void) { unsigned int temp, val; __nop(); __nop(); val = FlashRomStart; do { temp = FlashRomStart; __nop(); __nop(); } while(((val ^ temp) & (1 << BIT7)) != 0); } |
|||||
| 欢迎点击进入:TI德州中文网 (国内唯一针对TI应用的中文技术网站) 文章录入:admin 责任编辑:admin | |||||
| 【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 | |||||
| 最新热点 | 最新推荐 | 相关文章 | ||
| DSP5402读写K9F1G08之C++源代… DSP5402读写SST39VF400A之C+… DSP5402和MAX3110硬件接口图 DSP5402读写K9F1G08之C++源代… 波特率自适应技术在DSP5402上… |
| 网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!) |
| | 设为首页 | 加入收藏 | 联系站长 | 友情链接 | 版权申明 | 网站公告 | 管理登录 | | |||
|
|