作者a22326284 (chin)
看板ASM
标题[问题]一段程式想请教 跟pointer有关
时间Fri May 1 21:28:18 2015
不确定这该发在asm 还是c
因为觉得跟硬体比较有关所以发在这
//-------------------------------
小弟目前在研究一段程式
为了驱动我们要使用的另一颗ic
mcu为c8051f340
中间有一段initial的程式如下
writeByte(0x01, FLASH_ByteRead(0xF601), 0)
writeByte(x,x,x)这个副程式程式没问题
主要是 FLASH_ByteRead(0xF601) 他的副程式如下
unsigned char FLASH_ByteRead (FLADDR addr)
{
bit EA_SAVE = EA; // Preserve EA
char code * data pread; // FLASH read pointer
unsigned char byte;
EA = 0; // Disable interrupts
pread = (char code *) addr;
byte = *pread; // Read the byte
EA = EA_SAVE; // Restore interrupts
return byte;
}
小弟我的解释是 根据0xF601这个位址 去抓mcu内的资料
但我要如何得知 最後byte的数值为多少呢
还请各位大大帮忙 非常感谢 ><
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 111.240.145.124
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/ASM/M.1430486901.A.507.html
1F:推 WolfLord: 就是0xf601的内容啊~ 05/02 07:35
2F:→ a22326284: 回大大 但是我不晓得 0xF601内被写了甚麽资料 @@ 05/03 01:24
3F:→ a22326284: 主要是想知道 怎麽得知0xF601内的值.因为它似乎是FLASH 05/03 01:25
4F:推 WolfLord: 就是FLASH的内容啊~ 如果你有ICE就去DUMP啊不然就再读 05/03 08:31
5F:→ WolfLord: 一次看用甚麽丢出来不会?(UART?) 反正FLASH的内容又不会 05/03 08:32
6F:→ WolfLord: 随便自己变掉 05/03 08:32
7F:→ a22326284: 阿 抱歉 我现在才发现 原来我没打清楚.... 05/03 19:02
8F:→ a22326284: 这段CODE是IC供应商给的驱动范例 但我们要用的MCU是 05/03 19:02
9F:→ a22326284: TI的CC2530所以手边也没东西能将CODE中的东西读出来... 05/03 19:03
10F:→ a22326284: 抱歉 造成误会 再请问 FLASH 是根据我们烧录的东西 05/03 19:04
11F:→ a22326284: 会有一固定的值吗 还是还是每颗相同IC的FLASH都相同呢 05/03 19:04
12F:推 WolfLord: 一般来讲flash的内容都是你的程式定义的,不过有些mcu 05/04 17:06
13F:→ WolfLord: 可能会有些工厂写的参数:比如说震荡校正,类比偏压等 05/04 17:08
14F:→ a22326284: 好的 那我可能要问问看厂商了.... 感谢W大 :D 05/04 17:34