寄存器ps移花接木教程
ps移花接木教程 时间:2021-02-18 阅读:(
)
I2C教程——疯壳·开发板系列Wolverine-Team2015/7/16疯壳·开发板系列版权所有,盗版必究官网地址:http://www.
fengke.
club淘宝店:http://shop115904315.
taobao.
com官方QQ群:193836402目录第一节MPU硬件电路.
3第二节I2C.
42.
1I2C介绍.
42.
2寄存器介绍.
42.
2.
1I2C控制寄存器.
42.
2.
2I2C目标地址寄存器.
52.
2.
3I2C接收发送数据缓存与命令寄存器.
52.
2.
4I2C清除TX_ABRT中断.
62.
2.
5I2C使能寄存器.
62.
2.
6I2C状态寄存器.
72.
2.
7I2C接收FIFO数目寄存器.
82.
2.
8I2C发送异常终止源寄存器.
82.
3寄存器配置讲解.
9第三节I2C实验.
11疯壳·开发板系列版权所有,盗版必究官网地址:http://www.
fengke.
club淘宝店:http://shop115904315.
taobao.
com官方QQ群:193836402官网地址:http://www.
fengke.
club购买链接:http://shop115904315.
taobao.
com/官方QQ群:193836402疯壳·开发板系列版权所有,盗版必究官网地址:http://www.
fengke.
club淘宝店:http://shop115904315.
taobao.
com官方QQ群:193836402第一节MPU硬件电路MPU6050为I2C接口,分别接在MCU的P12与P13引脚,中断引脚接在P24引脚,如下图所示:疯壳·开发板系列版权所有,盗版必究官网地址:http://www.
fengke.
club淘宝店:http://shop115904315.
taobao.
com官方QQ群:193836402第二节I2C2.
1I2C介绍I2C总线是一个为系统中电路通信提供支持的可编程控制总线,它是一个软件定义的两线通信协议.
两线I2C串行接口包括一个串行数据线(SDA)和一个串行时钟线(SCL);支持两种通信速率,标准模式(0~100Kb/s)和快速模式(小于等于400Kb/s);时钟同步;32字节的发送接收FIFO;主机发送与接收操作;7或10位地址,7或10为混合格式发送;块发送模式;默认从地址为0x055;中断或者轮询操作模式;可编程的数据线保持时间;2.
2寄存器介绍I2C相关的寄存器比较多,所以我们只介绍常用的寄存器,其它的可以参考官方数据手册AD14580_DS_v3.
1.
pdf,位于目录:.
.
\WT开发板\硬件资料.
2.
2.
1I2C控制寄存器15:7位:保留不使用;6位:I2C从设备使能位,'0'表示从设备使能,'1'表示从设备不可用,该位不一定要软件设置,但是要保证如果该位为'0'则该寄存器的第0位也为'0';5位:当作为主设备时,是否发送重启条件,'0'表示不可以,'1'表示可以;疯壳·开发板系列版权所有,盗版必究官网地址:http://www.
fengke.
club淘宝店:http://shop115904315.
taobao.
com官方QQ群:1938364024位:作为主设备时,决定以7位地址还是10位地址开始发送,'0'表示7位地址,'1'表示10位地址;3位:作为从设备时,决定以7位地址还是10位地址开始发送,'0'表示7位地址,'1'表示10位地址;2:1位:I2C通信速度选择,1表示标准速度(100Kbit/s),2表示快速(400Kbit/s);0位:I2C主设备使能,'0'表示主设备不可用,'1'表示主设备使能,要保证如果该位为'1'则该寄存器的第6位也为'1';2.
2.
2I2C目标地址寄存器15:12位:保留不使用;11位:该位决定软件是否进行广播或者开始字节命令,'0'表示忽略第10位GC_OR_START并且正常使用IC_TAR;10位:如果第11位设置为'1',则该位表示控制器是否进行广播或开始字节命令,'0'表示发送广播地址,之后只能进行写操作,如果进行读操作则导致TX_ABRT置位,控制器一直停留在广播模式,直到第11位被清除,'1'表示发送开始字节;9:0位:这是主设备发送的目标地址,如果发送广播则该位被忽略,CPU只需要写一次这些位;注意如果目标地址与从设备地址相同则存在回路,但是FIFO为主从共用,所以完全回路是可行的,只支持单方向的回路,一个主设备不能给自己发送数据只能发送给从设备.
2.
2.
3I2C接收发送数据缓存与命令寄存器疯壳·开发板系列版权所有,盗版必究官网地址:http://www.
fengke.
club淘宝店:http://shop115904315.
taobao.
com官方QQ群:19383640215:9位:保留不使用;8位:读写控制位,作为从设备时不能控制方向,只能作为主设备时使用,'0'表示写,'1'表示读;7:0位:存储I2C总线上发送或接收的数据,如果你正在操作该寄存器并且要进行读操作则该位被忽略,如果你读该寄存器则该位存储的是接收到的数据.
2.
2.
4I2C清除TX_ABRT中断15:1位:保留不使用;0位:清除发送异常停止位,读该位则清除发送异常停止中断位,和发送异常停止源寄存器位.
同时发送FIFO从刷新/复位状态中释放出来,可以允许更多写入.
2.
2.
5I2C使能寄存器疯壳·开发板系列版权所有,盗版必究官网地址:http://www.
fengke.
club淘宝店:http://shop115904315.
taobao.
com官方QQ群:19383640215:1位:保留不使用;0位:控制器使能位;2.
2.
6I2C状态寄存器15:7位:保留不使用;6位:判断从设备是否活动;5位:判断主设备是否活动;4位:判断接收FIFO是否全满;3位:判断接收FIFO是否为空;疯壳·开发板系列版权所有,盗版必究官网地址:http://www.
fengke.
club淘宝店:http://shop115904315.
taobao.
com官方QQ群:1938364022位:判断发送FIFO是否全满;1位:判断发送FIFO是否为空;0位:判断I2C模块是否活动.
2.
2.
7I2C接收FIFO数目寄存器15:6位:保留不使用;5:0位:接收FIFO可以接收多少字节.
2.
2.
8I2C发送异常终止源寄存器疯壳·开发板系列版权所有,盗版必究官网地址:http://www.
fengke.
club淘宝店:http://shop115904315.
taobao.
com官方QQ群:19383640215位:当主设备需要发送数据时,却进入读数据状态;14位:当发送数据时,从设备丢失总线;13位:当从设备要接收数据时,FIFO中已经有一些数据;12位:失去仲裁;11位:当主设备不可用时,用户进行主设备的操作;10位:重启不可用,并且主设备在10位地址模式下发送读命令;9位:重启不可用,但是用户发送一个开始字节;8位:重启不可用,但是用户试图在高速模式下发送数据;7位:主设备已经发送了一个开始字节,并且开始字节被确认;6位:主设备在高速模式下,并且被确认;5位:主设备控制器广播之后进行读操作;4位:主设备发送广播,但是没有从设备确认;3位:只有主设备有效,主设备已经发送地址,并确认,但是发送数据得不到确认信号;2位:主设备使用10位地址模式,10位地址的第二个字节没有被任何从设备确认;1位:主设备使用10位地址模式,10位地址的第一个字节没有被任何从设备确认;0位:主设备使用7位地址模式,但是没有被任何从设备确认.
2.
3寄存器配置讲解#defineCLK_PER_REG(*(volatileuint16*)0x50000004)疯壳·开发板系列版权所有,盗版必究官网地址:http://www.
fengke.
club淘宝店:http://shop115904315.
taobao.
com官方QQ群:193836402#defineI2C_CON_REG(*(volatileuint16*)0x50001300)#defineI2C_TAR_REG(*(volatileuint16*)0x50001304)#defineI2C_DATA_CMD_REG(*(volatileuint16*)0x50001310)#defineI2C_CLR_TX_ABRT_REG(*(volatileuint16*)0x50001354)#defineI2C_ENABLE_REG(*(volatileuint16*)0x5000136C)#defineI2C_STATUS_REG(*(volatileuint16*)0x50001370)#defineI2C_RXFLR_REG(*(volatileuint16*)0x50001378)#defineI2C_TX_ABRT_SOURCE_REG(*(volatileuint16*)0x50001380)启动I2C模块的时钟:CLK_PER_REG|=0x0020;I2C的初始化寄存器配置:先关闭I2C控制器,I2C_ENABLE_REG=0x00;设置为主模式,关闭从模式,可以重复开始,速度设置为快速,地址为7位模式(0x0000000001100101),I2C_CON_REG=0x0065;设置目标设备地址为0x51,I2C_TAR_REG=0x51;打开I2C控制器,I2C_ENABLE_REG=0x01;等待控制器准备好,while((I2C_STATUS_REG&0x20)!
=0);读取地址为0x98处的一个字节,先发送地址I2C_DATA_CMD_REG=0x98;等待发送完毕while((I2C_STATUS_REG&0x0002)==0);发送读指令I2C_DATA_CMD_REG=0x0100;等待发送完毕while((I2C_STATUS_REG&0x0004)==0);之后等待数据接收完毕while(I2C_RXFLR_REG==0);读取接收缓冲区的数据即为接收数据rx_data=I2C_DATA_CMD_REG;向地址为0x98处写入一个字节0xaa,先发送地址I2C_DATA_CMD_REG=0x98;等待发送完毕while((I2C_STATUS_REG&0x0002)==0);发送数据I2C_DATA_CMD_REG=0xaa;等待发送完毕while((I2C_STATUS_REG&0x0004)==0);疯壳·开发板系列版权所有,盗版必究官网地址:http://www.
fengke.
club淘宝店:http://shop115904315.
taobao.
com官方QQ群:193836402第三节I2C实验实验需要使用的模块有:手环,Jlink调试工具,USB转串模块,一根手环下载调试线.
将JLINK通过下载调试线连接到手环的USB调试接口,JLINK插在有拨码开关的一端,注意丝印标注一一对应,将JLINK插上电脑的USB口.
将USB转串模块插在手环现在调试线的另一端,注意丝印标注一一对应,然后将USB转串模块插在电脑的USB接口.
如下图所示:打开I2C实验的Keil工程Simple_I2C.
uvproj,位于目录:.
.
\Moobandv1.
3\4_实战教程\1_裸机篇\5_I2C实验\I2C实验,如下图所示:疯壳·开发板系列版权所有,盗版必究官网地址:http://www.
fengke.
club淘宝店:http://shop115904315.
taobao.
com官方QQ群:193836402打开串口调试助手,连接串口模块.
在KEIL中编译源代码,点击DEBUG,然后点击全速运行,就可以看到串口调试助手打印出的信息,如下图所示:疯壳·开发板系列版权所有,盗版必究官网地址:http://www.
fengke.
club淘宝店:http://shop115904315.
taobao.
com官方QQ群:193836402
RAKsmart 商家我们应该较多的熟悉的,主营独立服务器和站群服务器业务。从去年开始有陆续的新增多个机房,包含韩国、日本、中国香港等。虽然他们家也有VPS主机,但是好像不是特别的重视,价格上特价的时候也是比较便宜的1.99美元月付(年中活动有促销)。不过他们的重点还是独立服务器,毕竟在这个产业中利润率较大。正如上面的Megalayer商家的美国服务器活动,这个同学有需要独立服务器,这里我一并整理...
美国知名管理型主机公司,2006年运作至今,虚拟主机、VPS、云服务器、独立服务器等业务全部采用“managed”,也就是人工参与度高,很多事情都可以人工帮你处理,不过一直以来价格也贵。也不知道knownhost什么时候开始运作无管理型业务的,估计是为了扩展市场吧,反正是出来较长时间了。闲来无事,那就给大家介绍下“unmanaged VPS”,也就是无管理型VPS,低至5美元/月,基于KVM虚拟,...
今天看到群里的老秦同学在布局自己的网站项目,这个同学还是比较奇怪的,他就喜欢用这些奇怪的域名。比如前几天看到有用.in域名,个人网站他用的.me域名不奇怪,这个还是常见的。今天看到他在做的一个范文网站的域名,居然用的是 .asia 后缀。问到其理由,是有不错好记的前缀。这里简单的搜索到.ASIA域名的新注册价格是有促销的,大约35元首年左右,续费大约是80元左右,这个成本算的话,比COM域名还贵。...
ps移花接木教程为你推荐
百度k站百度K站是怎么回事?主页改不了浏览器主页改不了flash导航条flash导航条swf格式的要怎么编辑网站联盟网盟跟b2b平台有什么区别显卡温度多少正常显卡温度多少算正常?迅雷云点播账号求个迅雷VIP 是VIP就可以 只用来看云点播 改密码是孙子。 谢了 ! 362135668@qq.com怎么升级ios6苹果iPhone6怎么升级系统gbk编码表GB GBK utf8码的区别发邮件怎么发如何发邮件?服务器连接异常手机WIFI检查显示主服务器连接异常,怎么办
域名注册使用godaddy 过期备案域名查询 双线主机租用 美国独立服务器 winhost 60g硬盘 搜狗抢票助手 php免费空间 777te 百兆独享 购买国外空间 raid10 服务器是干什么用的 免费外链相册 www789 ebay注册 域名转入 国外代理服务器 好看的空间 沈阳idc 更多