自己把24c16的使用结合代码整理了一遍

之前看pcf时发现其实有很多芯片和24c系列的芯片很像,所以就不得不整理一下了,发辫以后回顾
r如果整理的不够好,请不要喷我,我是弱菜

#include
#include    //要用到_nop_()精准延时
#define uchar unsigned char
#define uint unsigned int
sbit scl=P2^1;//24c16时钟线,数据线定义
sbit sda=P2^0;
uchar code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//数码管显示
uchar num,sec; //用来计时
void usdelay()
{
_nop_();_nop_();
_nop_();_nop_();
_nop_();_nop_();
}
void delayms(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
void start() //起始信号  当时钟线为1,数据线有个下降沿
{
sda=1;
usdelay();
scl=1;
usdelay();
sda=0;
usdelay();
}
void stop()//终止信号  当时钟线为1,数据线有个上升沿
{
sda=0;
usdelay();
scl=1;
usdelay();
sda=1;
usdelay();
}
void ack() //应答信号 由从机发出信号为sda由1变为0
{
uchar i;
scl=1;
usdelay();
while((sda==1)&&i<200)i++;
scl=0;
usdelay();
}
void init24c16()//24c16初始化
{
sda=1;
usdelay();
scl=1;
usdelay();
}
void write_byte(uchar dat) //字节写(写数据或地址) 数据线sda不变,scl有个上升沿,写入数据
{
uchar i;
for(i=0;i<8;i++)
{
scl=0;
usdelay();
sda=(bit)(dat&0x80);
usdelay();
scl=1;
usdelay();
dat<<=1;
}
scl=0;
usdelay();
}

uchar read_byte()   //字节读 scl有下降沿读出
{
uchar i,k;
for(i=0;i<8;i++)
{
scl=1;
usdelay();
k=(k<<1)|sda;
scl=0;
usdelay();
}
return k;
}
void write_add(uchar add,uchar dat)
{
start();
write_byte(0xa0);
ack();
write_byte(add);
ack();
write_byte(dat);
ack();
stop();
}

uchar read_add(uchar add)
{
uchar dat;
start();
write_byte(0xa0);
ack();
write_byte(add);
ack();
start();
write_byte(0xa1);
ack();
dat=read_byte();
usdelay();
stop();
return dat;
}
void main()
{
init24c16();
sec=read_add(2);
if(sec>9) sec=0;
TMOD=0x01;//定时器选择软件启动,工作方式为1 
ET0=1;//开定时器0允许
EA=1;//开总中断允许
TH0=(65536-50000)/256;
TL0=(65536-50000)%6;//给定时器赋初值,定时50ms 
TR0=1;//启动定时器0 
while(1)
{
if(num==20)
{
num=0;
sec++;
if(sec>9)
sec=0;
}
P3=table[sec];
write_add(2,sec);
}
}
void t0() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%6;
num++;
}

24c16的使用方法相关推荐

  1. excel加载项不能被加载_最喜欢的免费Excel加载项

    excel加载项不能被加载 Excel is certainly packed with features, but I use a few free add-ins that make Excel ...

  2. excel加载项不能被加载_Excel收藏夹加载项

    excel加载项不能被加载 As you work in Excel, the files that you've used most recently appear at the bottom of ...

  3. Excel Tools加载项黑色星期五促销

    It's Black Friday in the USA – the busiest shopping day of the year. This event has spread to Canada ...

  4. 在 Oracle Enterprise Linux 和 iSCSI 上构建您自己的 Oracle RAC 11g 集群

    作者:Jeffrey Hunter 了解如何以低于 2,700 美元的费用在 Oracle Enterprise Linux 上安装并配置 Oracle RAC 11g 第 2 版开发集群. 本指南中 ...

  5. Java面试题大全2021版

    一.Java 基础 JDK 和 JRE 有什么区别? JDK:Java Development Kit 的简称,java 开发工具包,提供了 java 的开发环境和运行环境. JRE:Java Run ...

  6. STM32F103RC引脚模拟I2C操作EEPROM(24C16)的方法总结

    要使用24C16,首先了解一下它. 1.24C16的总容量是16K bit,转换成字节除以8,即为 2K byte. 2.DEVICE ADDRESS的前四位固定为1010,紧跟着的三位,范围是 00 ...

  7. Kotlin协程使用,协程使用注意事项,协程中的await方法使用|不使用suspend使用协程

    参见 码云 协程使用方法一 (Dispatchers调度器模式) 指定不同线程.同线程会挂起并阻塞(挂起是不影响主线程执行,阻塞是同样的IO线程会阻塞) withContext(Dispatchers ...

  8. IDEA中将代码块封装为方法,IDEA代码重构快捷键

    IDEA中将代码块封装为方法 选中要转换的代码块,快捷键: Windows快捷键:Alt + Shift + M Mac快捷键:Alt + Command + M 如图:

  9. IDEA自动生成对象所有set方法

    idea中有一款插件能够生成对象所有的set方法,GenerateAllSetter :下载地址 步骤1:将下载好的压缩包放在自己记得的文件夹中,在idea中进行导入 步骤2:在本地选中刚才的压缩包, ...

最新文章

  1. 拜托!不要再问我是否了解多线程了好吗
  2. BZOJ-1034-[ZJOI2008]泡泡堂BNB(贪心)
  3. 大数据实时计算工程师/Hadoop工程师/数据分析师职业路线图
  4. SAP Spartacus delivery mode continue button enable与否的逻辑
  5. 渐进式web应用程序_通过渐进式Web应用程序吸引用户并增强他们的体验
  6. potainer 日志_日志系统落地:制定日志规范
  7. 常用linux terminal 命令
  8. 疫情向左、大基金向右,国产光刻胶走到了哪一步?
  9. html输入地址提示错误,高德地图开发之输入框内伴随地址的输入,动态给出地址选择提示...
  10. 关于神经网络,这里有你想要了解的一切!
  11. 查询sql语句所花时间
  12. Flink CDC 系列 - 同步 MySQL 分库分表,构建 Iceberg 实时数据湖
  13. win2008使用windows loader激活提示Unsupported partition table
  14. oracle vm 强制关机,[已解决]Virtualbox安装archlinux过程中客户机和宿主机全部卡死...
  15. 报表类-金蝶K3一次查询所有供应商采购价格
  16. 微软开发的www服务器程序是,WebDeploy 微软开发的IIS6同步应用程序
  17. R 两组样本t检验 wilcoxon检验、卡方、fisher精确检验
  18. idea 一次启动多服务配置
  19. 50道必备的Python面试题 (建议点赞)
  20. 蓝桥杯真题系列:第十一届蓝桥杯C语言B组集锦

热门文章

  1. 关于hdwiki打开词条速度慢
  2. Java基础 --- 注解 Annotation
  3. 幼儿园老师计算机培训,幼儿园教师计算机培训计划方案
  4. 一行代码玩童年小游戏
  5. 2018 DAMS中国数据资产管理峰会4大亮点抢先看!
  6. 帕拉迪“聚力赋能 创势前行”,IAM击破企业安全三大痛点
  7. 各种渠道搜集--软考网络规划设计师的历年真题
  8. 激情绿茵,助力2022卡塔尔世界杯——基于改进的YOLO模型玩转足球检测分析系统
  9. 男大十八变、邂逅真命天女……这个华为小伙的摩洛哥4年,慕了
  10. 计算机毕业设计PHP+安卓壳爱如你手机壳店铺APP(源码+程序+lw+远程调试)