搜索
bottom↓
回复: 4

关于PIC18F4620保存端口值的问题

[复制链接]

出0入0汤圆

发表于 2010-8-7 23:32:11 | 显示全部楼层 |阅读模式
我最近在做个小程序,用的是PIC18F4620。我用键盘来控制发光二极管的亮灭,同时用变量来读取断后的电平值,然后用变量还原当时记录的状态。
但是我在线调试的时候发现变量i、m的值在变化...这是为什么呢?
想听听大家的说法...
case 0x0dfb:
                            if(turnon)
                              {
                               if(turnon1)
                                {
                                                   
                                    led3green=1;
                                    send232[0]=0xAF;
                                    send232[1]=0X96;
                                    send_count=0X02;
                                    TRISC=0XFF;
                                    m=LATC;
                                    TRISB=0XFF;
                                    i=LATB;
                                    TRISB=0X00;
                                    TRISC=0X00;  
                                    ppt=1;
                                 
                                }
                              }
                             break;



接下来是还原端口状态
if((m&0x08==0x08)&&(i&0x07==0x07))
                                   {                     
                                TRISC=0X00;
                                TRISB=0x00;
                                delay_10ms();
                                                    led1green=0;
                                led2green=0;
                                led3green=0;
                                led4green=0;
                                   }
                                     else
                             
                                  {
                                                                            TRISC=0x00;
                                                            TRISB=0x00;
                                                                            delay_10ms();
                                                            LATC=m;
                                                            LATB=i;
                                    }
                                                            turnon1=0xff;
                                                            n=1;
                                }

出0入0汤圆

发表于 2010-8-8 06:26:59 | 显示全部楼层
the most important rule of good programming is "comment, comment and comment".

出0入0汤圆

发表于 2010-8-8 08:22:41 | 显示全部楼层
送到端口的变量使用eeprom保存, 断电后再上电从eeprom读出来

出0入0汤圆

 楼主| 发表于 2010-8-8 22:07:27 | 显示全部楼层
回复【2楼】gaolf_2000
-----------------------------------------------------------------------
我是在不断电的情况下读取的,我用按键来控制二极管的亮灭不是通过给单片机断电啊...

出0入0汤圆

 楼主| 发表于 2010-8-8 22:09:22 | 显示全部楼层
有懂的人么
我的问题看似简单
其实比较麻烦
QQ350651283
留言或邮件都可以
在这里先谢谢大家的帮助了
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-9 03:38

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表