历史上的今天
返回首页

历史上的今天

今天是:2024年08月31日(星期六)

2020年08月31日 | STC15408AS单片机的EEPROM测试程序

2020-08-31 来源:51hei

我用的是4位595驱动的数码管作为数据显示;
#include "STC15w408as.H"
#include "intrins.h"  
#define U8  unsigned char
#define U16 unsigned int
#include "EEPROM.H"            //这个文件在附件中可以下载


sbit DS=P1^2;                 //测试键
sbit SDA=P1^1;   //595驱动数码管
sbit CLK=P1^0;
sbit ST=P3^7;


U8 shuzi[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};   //数码管编码


void SEND_595(U8 D_dat)    //向595发送一个字节
{        U8 i;
        for(i=0;i<8;i++)
        {        CLK = 0;
                if(D_dat&0x80) {SDA=1;}         else{SDA=0;}  
                D_dat<<=1;
                CLK = 1;  
        }
}


void disp(U16 R_dat)                    //数码管显示
{        U8 ge,shi,bai,qian;
        ge=R_dat%10;
        shi=R_dat/10;        shi=shi%10;
        bai=R_dat/100;        bai=bai%10;
        qian=R_dat/1000;
        SEND_595(shuzi[ge]);        
        SEND_595(shuzi[shi]);               
        SEND_595(shuzi[bai]);               
        SEND_595(shuzi[qian]);
        ST=1;ST=0;
}
void main ()
{           DS=1;
    while(1)
    {IAP_READ(0x0001);                 //  读取地址为0x0001里的数据
         disp(IAP_READ_DAT);       //    显示地址为0x0001里的数据
         if(DS==0)
            {IAP_del(0x0001);       //      擦除0x0001里的数据  (发现每次写新的数据进去都要先擦除)
             IAP_Write_DAT++;     //     对原有的数据+1
             IAP_Write(0x0001);}   //    将新数据写入地址为0x0001里
        }
}

说明:DS键每低电平一次EEPROM的地址为0x0001里的数据就加1 ,显示在数码管上。

最重要的是断电后,重新上电,刚才累加计数依然可以显示出来,这就是EEPROM的作用!

推荐阅读

史海拾趣

Gore公司的发展小趣事
在电路设计时,合理选择元件参数和电路结构,以减少中点电位不平衡的发生。
Atlantic Microwave Ltd公司的发展小趣事

随着国内市场的饱和,Atlantic Microwave Ltd公司开始将目光投向了更广阔的国际市场。公司组织了一支专业的国际营销团队,深入调研不同国家和地区的市场需求和文化习惯,制定了针对性的市场推广策略。同时,公司还积极参与国际电子展会和技术交流活动,展示公司的最新产品和技术实力,成功打开了多个国际市场的大门。

CLARE公司的发展小趣事

随着技术的不断进步和市场的日益成熟,CLARE公司开始致力于产品的创新和升级。公司研发团队紧跟科技前沿,不断探索新技术、新材料和新工艺的应用,推出了一系列具有创新性和领先性的电子产品。这些产品不仅满足了客户的需求,还引领了市场的潮流,进一步提升了CLARE公司的品牌影响力和市场竞争力。

Diplohmatic A/S公司的发展小趣事

随着业务的不断扩展,Diplohmatic A/S公司意识到质量管理的重要性。公司投入大量资源,引进先进的质量管理体系和检测设备,对生产过程中的每一个环节进行严格把控。同时,公司还加强了员工的质量意识培训,确保每一位员工都能深刻理解并贯彻公司的质量方针。这些措施的实施,使得公司的产品质量得到了显著提升,赢得了客户的广泛赞誉。

Chauvin Arnoux公司的发展小趣事

在1905年,Chauvin Arnoux公司推出了带有曲柄电感的欧姆表,这一创新为电气测量领域带来了突破性的进展。随后,在1923年,公司进一步发展了这一技术,使得欧姆表的测量不再受到曲柄速度的影响,大大提高了测量的准确性和稳定性。这一系列的创新使得Chauvin Arnoux在电气测量领域确立了领先地位,为后续的发展奠定了坚实的基础。

DBS Microwave Inc公司的发展小趣事

随着公司产品的不断成熟和技术的不断进步,DBS Microwave开始积极拓展国际市场。公司参加了多个国际电子展会,与全球各地的客户建立了联系。同时,公司还积极寻求与国际知名企业的合作机会,通过技术交流和合作研发等方式,不断提升自身的技术水平和市场竞争力。这些努力使得DBS Microwave在国际市场上取得了良好的业绩。

问答坊 | AI 解惑

单片机的状态迁移与复位操作

作者:河北通信职业技术学院 李学海 孙群中华北电力大学 李聪聪 来自:单片机与嵌入式系统 本文以经典的80C51单片机为例,利用工作状态及其状态迁移的新概念、新观点和新方法,揭示一些单片机运作的内在规律,对于单片机学习者和应用开发者具有 ...…

查看全部问答>

关于时钟的讨论(1)

无沦是用离散逻辑、可编程逻辑,还是用全定制硅器件实现的任何数字设计,为了成功地操作,可靠的时钟是非常关键的。设计不良的时钟在极限的温度、电压或制造工艺的偏差情况下将导致错误的行为,并且调试困难、花销很大。 在设计PLD/FPGA时通常采用 ...…

查看全部问答>

高性价比NAS在智能网络视频监控中的优势

在国外,NAS设备已成为网络数据存储的首选设备,并且以年66.5%的速度递增。NAS产品已经广泛应用到教育科研、ISP/ASP、IDC、Web/E-mail服务器集群、金融/保险、电信、CAD、医药系统、印刷、网络音视频VOD点播等诸多领域。在国内,也有越来越多的企业 ...…

查看全部问答>

求wince6.0下TCPMP播放视频的crash问题解决方法!!!

wince6.0下TCPMP播放视频的crash问题,播放音频无问题,播放视频就一定会出现。谁知道解决办法?给点提示也好,谢谢 如果有条件,一切都可以商量,QQ:597326493…

查看全部问答>

wince下MFC问题一

先显示一个对话框,用户点击button控件,跳到另一个对话框,对话框都是全屏,都包含button控件,用ShowWindow()或domodal()来显示。 这样有个问题,当跳到另一个对话框时,对话框的背景先显示,然后再显示控件,很明显的看到这个情景,而不是 ...…

查看全部问答>

请问针对特定嵌入式处理器的linux内核及优化的内核补丁去哪里找

请问针对特定嵌入式处理器的linux内核及优化的内核补丁去哪里找…

查看全部问答>

自己做的STM32 板终于接近尾声了

拖拖拉拉了那么久春节之后就开始设计到现在两个月多了,前前后后,查了不少资料,做了方案然后又修改了好几次,找元件等等。 甚至到了入封装的时候又修改了线路,增加删减等。因为10X10的爽面板 100元嘛,所以布板后又不断的大力挤压电路,为求功 ...…

查看全部问答>

看看出色的USB接口设计 防止误操作

  由于接口卡座的设计有些隐蔽,连接USB端口是一件相对麻烦的事情,特别对USB接口位于主机箱后方的用户来说更是如此。既然这样,我们何不重新设计USB的接口,使其变得更直观呢?  来自韩国的设计者Lim Jae Min在遇到这样的问题后,设计出 ...…

查看全部问答>

TI Serial MCU全国研讨会 参会iPod Touch d Touch 4代抽奖

由德州仪器和新晔电子举办的MCU技术研讨会将于2012年5月-6月在全国12个城市举办,具体安排如下,诚邀您的光临。华南区:珠海5月11日、东莞5月16日、广州5月18日、福州5月22日华东区:上海6月4日、杭州6月5日、南京6月6日、武汉6月8日、华北区:北京 ...…

查看全部问答>

OMAPL138以太网通讯无法ping通,烦烦烦,求大神帮忙

我用的是OMAPL138的芯片,网卡是KSZ8041FTL,用的平台是CCS3.3,调试dsp,并且移植了Ucos操作系统,我把板子的网口和主机的网口用网线连起来,然后在主机的cmd中ping板子的IP地址,到目前为止就出现2次ping通,而且ping通了一下就超时了,一次丢包 ...…

查看全部问答>