登录
首页 » 驱动 » 模拟IIC主机

模拟IIC主机

于 2022-08-13 发布 文件大小:3.11 kB
0 123
下载积分: 2 下载次数: 1

代码说明:

实现IIC和UART数据交换  ,本程序主要完成IIC的主机模拟,和单片机串口的控制,本程序单片机使用STC89C52系列的单片机,

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • stm32的spi程序
    应用背景SPI 是英语 Serial Peripheral interface 的缩写,顾名思义就是串行外围设备接口。是 Motorola 首先在其 MC68HCXX 系列处理器上定义的。SPI 接口主要应用在 EEPROM,FLASH,实时时 钟,AD 转换器,还有数字信号处理器和数字信号解码器之间。SPI,是一种高速的,全双工, 同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为 PCB 的布局 上节省空间,提供方便,正是出于这种简单易用的特性,现在越来越多的芯片集成了这种通信 协议,STM32 也有 SPI 接口。关键技术 SPI信号线:SPI 接口一般使用 4 条线通信: MISO 主设备数据输入,从设备数据输出。 MOSI 主设备数据输出,从设备数据输入。 SCLK 时钟信号,由主设备产生。 CS 从设备片选信号,由主设备控制。  SPI模式:根据SPI时钟极性和时钟相位配置的不同分为4种SPI模式。如果 CPOL=0,串行同步时钟的空闲状态为低电平;如果 CPOL=1,串行同步时钟的空闲状态为高电 平。时钟相位(CPHA)能够配置用于选择两种不同的传输协议之一进行数据传输。如果 CPHA=0,在串行同步时钟的第一个跳变沿(上升或下降)数据被采样;如果 CPHA=1,在串 行同步时钟的第二个跳变沿(上升或下降)数据被采样。 SPI架构分析:通过STM32的架构图,可以看到MISO数据线接收到的信号经移位寄存器处理后把数据转移到接收缓冲区,然后这个数据就可以由我们的软件从接收缓冲区读出了。
    2023-08-18 10:45:04下载
    积分:1
  • 保护
    只要有安装DDK,命令提示下 进入 makefile、sources 所在的目录 输入build 即可编译出sys是初学DDK者的首先 
    2022-01-29 00:32:24下载
    积分:1
  • Html Preview
    c级
    2022-01-26 02:47:27下载
    积分:1
  • fcm8531速度积分代码
    速度积分的原理如下:比例积分 (PI) 控制器利用电流矢量的相位误差产生速度命令,然后对速度命令进行积分运算,产生位置信号,从而实现电机的无传感器控制。
    2022-03-03 08:54:25下载
    积分:1
  • FPGA数码管态显示10位数字
    资源描述FPGA驱动数码管动态显示10位数字,已通过zedboard测试  代码修改容易
    2022-07-25 06:28:30下载
    积分:1
  • 基于51单片机的CAN 通信
    应用背景 为初学者打通基于51单片机的CAN通信学习。使用的can控制器是SPI接口的MCP2515。 本程序在51单片机开发板上经验证,可以正常使用。 希望对你有所帮助。 关键技术 部分程序: */ void mcp2515_setRegister(unsigned char address,unsigned char Value) { CS = 1; Delay_Us(5); SPISendByte(0x02);           /* 字节写命令,0x02,后跟一字节地址,一字节数据 */ SPISendByte(address); SPISendByte(Value); CS = 1; Delay_Us(5);                 /* CS禁止时间,大于50ns */ } /**************************************************************** * *     函数名:  mcp2515_setRegisterS   *     入口参数:adress: 需要设置的寄存器的地址   *               value[]:用来设置的缓冲区的头指针   *            
    2023-03-23 19:30:03下载
    积分:1
  • NRF51822-24 16 C
    这是一个24C16 EEPROM存储器驱动Nordic半导体nrf51822芯片使用有或没有软设备栈(S110,S310,……)。注意:只有字节字节读/写的很好
    2022-07-14 18:52:23下载
    积分:1
  • C#界面皮肤源码(带大量皮肤素材)
    一个从网上下载的东西,貌似还要了很多分,免费非大家伙看看 居然要求写满50个字,平生最恨至少800了,此处可以省略5000字
    2022-08-25 00:39:06下载
    积分:1
  • 软件定时器
    应用背景     我们在做单片机程序时,经常会用到多个定时器,这时我们就需要各个配置多个不同的TIMER,有时TIMER不够用,有时TIMER配置过多,标志过多,程序写着写着就乱了,就算是理清了,也会造成程序可读性差,可移植性低,对硬件依赖性强的缺点。     为了解决这个问题,我们可以用程序实现一个软件定时器,在内存允许的范围内,它可以实现无数个定时器、计数器功能,当需要一个定时器,只需要在程序里定义一个定时器变量,通过不同接口的调用,就可以实现定时功能;实现这一功能,只需要占用一个硬件定时器即可,大大减少了硬件TIMER的占用,提高了程序的可移植性,降低程序的复杂度。   关键技术     在这里,我们需要借鉴操作系统架构里的系统嘀嗒功能。先初始化一个硬件TIMER作为系统的心跳,用这个TIMER来驱动一个全局变量sys_pulse的递增;然后利用程序来查询变量当前值判断系统程序的执行时间,从而得现时间的间隔,再通过事件发送程序来通知任务定时已到。     一个软件定时器变量,至少需要包括三个元素,开始时间start_time,定时时长interval,事件内容event;     每当程序启动一个定时器,将当前系统的sys_pulse值赋于开始时间变量start_time, 设定定时器的定时时长interval, 和事件内容event, 然后在主循环里不断查询sys_pulse 是否大于 start_timer + interval,如果大于,则表明此定时器定时结束,然后调用事件发送函数告诉任务,定时已到,开始执行任务。     如果用户要移植此程序,只需要修改timer_init()内硬件TIMER的初始化程序即可,其它内容可以直接引用,不需要修改。   &
    2023-04-15 22:30:04下载
    积分:1
  • 12864 PIC18F
    资源描述 本代码是PIC18F驱动LCD12864显示程序,已经成功显示无误。编译器是XC8,可以正常使用。 晶振使用的是内部8MRC振荡器。测试基于ST7920控制芯片的LCD12864的显示并行方式连接(该程序只支持ST7920控制芯片的LCD12864)
    2023-02-02 04:25:03下载
    积分:1
  • 696516资源总数
  • 106914会员总数
  • 0今日下载