AK-47的笔记 https://bbs.21ic.com/?554899 [收藏] [复制] [RSS] AK-47首创 力克ARM

日志

PIC中const 数组查询使用的问题

已有 1764 次阅读2009-7-12 12:31 |系统分类:单片机| PIC, const, 定义常数数组, IO口使用, RIMER0

以前一直使用keil写51
现在有段代码要移植到PIC上,出现了一个问题,我把keil中定义在CODE区的如
code uchar Stp_Tab[8]= { 0x08,0x0a,0x02,0x6,0x04,0x5,0x01,0x09} ;
该成const uichar Stp_Tab[8]= { 0x08,0x0a,0x02,0x6,0x04,0x5,0x01,0x09} ;
picc 编译是通过了,但是我在引用的s时候:
void Stp_Run (uint16 speed , uint8 mode)

 { 
   uint8 i = 0;
   if (mode ==CW)  
        {
         for(i= 0; i < 8 ;i ++)
           {
            PORTA = Stp_Tab;
           }

        }
这段代码却警告有错误出现:
Error   [1268] E:\hand\source\stepper.c; 41. fixup overflow storing 0x106 in 1 byte at 0x24E (PIC16F57.obj 38/0x2C)
Error   [1268] E:\hand\source\stepper.c; 22. fixup overflow storing 0x106 in 1 byte at 0x200 (PIC16F57.rlf 180/0x0)
我不知道这个是什么原因,我在keil中一直是可以这样 查询CODE区的常数的啊,

这个是这几天学习PIC 单片机过程中发现的问题,现在已经解决。
是PICC编译器出了我问题,现在用的是MPLAB V8.30 PICC 8.05 环境下编写程序

另外还发现 在抵挡的PIC中 如PIC16F57居然没有中断,没中断当然就没中断溢出标志位了,
这就就不知道他的定时器要怎么用了,





路过

鸡蛋

鲜花

握手

雷人

评论 (0 个评论)