STM3240条知识,开发经验必备条知识,开发经验必备39、DAC有两个寄存器,一个是DHR(DataHoldingRegister)数据保持寄存器,一个DOR(DataOutputRegister)数据输出寄存器.
真正起作用的是DOR寄存器,该寄存器把值给数模转换发生单元输出以VREF为参考电压的电压值.
如果是硬件触发转换,系统将在1个ABP时钟周期后把值给DOR,如果是软件触发转换,时间为3个APB时钟周期.
然后,均等待Tsetting时间(Typical为3us,Max为4us)后真正输出电压值.
40、DAC分8位模式和12位模式,其中后者可以选择左右对齐.
41、DMA仲裁器分为软件和硬件两种.
软件部分分为4个等级,分别是很高优先级、高优先级、中等、低.
硬件部分由通道的大小来决定优先级,越低优先级越高.
42、DMA有一个实时的传输数据量寄存器叫做DMA_CNDTR,最大值为65535,存放的是当前传输所要传输的数据量.
当数据量变为0时,表明传输完成.
43、CAN总线(ControllerAreaNetwork).
CAN控制器根据两根线上的电位差来判断总线电平,总线电平又分为显性电平和隐性电平,二者必居其一.
44、CAN总线具有6个特点:1、多主控制2、系统若软性3、通讯速度较快,通讯距离较远4、具有错误检测、错误通知和错误恢复功能5、故障封闭,当总线上的设备发生连续故障错误时,CAN控制器会把改控制器踢出总线6、连接节点多.
理论上可以无限制加载,但是受到时间延迟和电气负载的限制,实际数目是有限制的.
降低传输速度可以适当增加可挂接负载个数.
45、CAN协议有两个标准,ISO11898(针对125kbps~1Mbps的高速速率)和ISO11519-2(125kbps以下的低速速率)46、147、CAN协议的有5种类型的帧:数据帧、遥控帧、错误帧、过载帧、帧间隔.
其中前两种帧有标准格式(11位ID)和扩展格式(29位ID).
48、数据帧构成:(1)帧起始.
表示数据开的段帧起始.
(2)仲裁段.
表示该帧优先级的仲裁段.
(3)控制段.
表示数据的字节及保留位段.
(4)数据段.
数据的内容,一帧可发送0~8个字节的数据.
(5)CRC段.
检查帧的传输错误段.
(6)ACK段.
表示确认正常接收的段.
(7)帧结束.
表示数据的段帧结束.
249、Stm32f103系列只有一个CAN控制器,有3个发送邮箱和3级深度的2个FIFO,14个过滤组器.
50、STM32的每个过滤组可以配置为1个32位过滤器和2个16位过滤器.
除此之外,还可以配置为屏蔽位模式(ID屏蔽)和标识符列表(ID和屏蔽寄存器均用来做ID寄存器)模式.
51、CAN接收到有效报文被放置在3级邮箱深度的FIFO中,FIFO完全由硬件来管理.
52、CAN总线的波特率353、触摸屏一般分为电阻式触摸屏和电容式触摸屏.
前者检测触摸的位置原理是利用触摸屏控制器中的A/D转换器经过两次A/D读值后得出X和Y的坐标值.
注意:这个X和Y的值是相对于触摸屏的,而非LCD屏.
所以在这里需要注意两个概念:触摸屏和LCD屏.
这是两个不同的概念,也是两个不同的物理结构,其中电阻触摸屏是由上下两个导电层中间夹着一层非常薄的透明隔层;而LCD就是指显示屏.
54、电阻触摸屏有X和Y、X和Y的比例因子、坐标轴方向、偏移量.
LCD也有自己的这些参数.
两者完全不相干,所以在定位的时候需要进行坐标转换.
公式:通过对屏幕的四个点进行校准,得到四元一次方程,求解即可.
55、NEC协议的数据帧格式:同步码头、地址码、地址反码、控制码、控制反码.
同步码由一个9ms的低电平和一个4.
5ms的高电平组成,地址码、地址反码、控制码、控制反码均是8位数据格式.
按照低位在前,高位在后的顺序发送.
56、NEC协议在发送的时候,会有560us的38KHz的载波信号,而在接收的时候这部分载波信号被认定为低电平,而剩余的(2.
25ms-650us)的逻辑"1"和(1.
12ms-650us)的逻辑"0"时间则被认定为高电平.
57、在单位时间内的位移被定义为速度,速度有线速度和角速度之分,分别对应两种传感器测量这两种不同的速度:线速度传感器(加速度计)、角速度传感器(陀螺仪).
前者多应用在静态或者低慢速运动中的姿态求解,后者多应用在动态运动中姿态求解.
58、根据标准约定,零加速度(或零G准位)通常定义为相当于最大输出值(12位输出为4096,10位输出为1024等)一半的输出.
对于提供12位输出的加速度计,零G准位将等于2048.
输出大于2048表示正加速度.
输出小于2048表示负加速度.
加速度的数量通常用单位g(1g=9.
8m/s2=重力加速度)表示.
通过确定测量的输出与零G准位之间的差值,然后除以加速度计的灵敏度(用计数/g或LSB/g表示)来计算加速度.
对于提供12位数字输出的2g加速度计,灵敏度为819计数/g或819LSB/g.
加速度等于:a=(Aout-2048)/(819计数/g),单位为g.
59、加速度计测得的加速度的方向和设备设定的坐标系是相反的,因为原理表明在测量力的时候采用的是非惯性系参考系,而我们高中时代研究的坐标系是惯性系参考系,前者在物体进行运动产生加速度时,假想一个与速度方向相反的力作用在物体上,这个力就是惯性力;后者我们说不存在惯性力,只说存在惯性,因为在惯性坐标系中,我们研究的是物体,而非坐标系(即假定坐标系相对地球静止),当我们把坐标系也考虑在内时,当坐标系运动,就产生了惯性力f,这种力作用会假想作用在物体上,只是与运动方向相反.
60、由上可知,加速度计的本质是测量力而非加速度.
61、NRF24L01工作在2.
4GHz的频段,由于频段频率较高,所以传输速率较快,为2Mbps.
62、STM32的闪存模块由:主存储器、信息块和闪存存储器接口寄存器3个部分构成.
主存储器用来存放代码和const常量;信息块由两个部分组成:启动程序代码、用户选择字节.
其中启动程序代码为ST公司自带的启动程序,用于串口下载.
最后的闪存存储器接口寄存器用于控制整个对闪存区域的操作.
63、CPU的运行速度比FLASH的操作速度快的多,一般FLASH的最快访问速度≤24Mhz.
如果CPU的速度超过这个频率,那么在读取FLASH的时候必须加入等待时间(FLASH_ACR设置).
64、FLASH编程时,写入必须为半字(16位).
并且在写入的时候必须保证所写区域的数据必须为0xFFFF.
65、STM32的FSMC有HADDR[27:0],其中[27:26]用来选择BANK区域的4个不同块.
剩下的[25:0]则用来连接外部存储区域的地址线FSMC_A[25:0].
如果数据宽度是8bit,此时的HADDR[25:0]和FSMC_A[25:0]是完全对应的.
如果数据宽度是16bit,此时的HADDR[25:1]和FSMC_A[24:0]是对应起来的.
需要注意:无论数据宽度是多少,外部的FSMC_A[0]和A[0]总是对应的.
66、关于LB和UB的信号控制是由硬件自动控制的,当AHB的数据宽度小于外部存储器的数据宽度时,此时LB和UB的控制信号自动产生(比如字节读取/写入16bit的外部存储器).
467、__attribute__(函数属性、变量属性、类型属性等).
如果在使用SRAM时,可以采用u32sram_array[xx]__attribute__((at(0x68000000))代表将外部SRAM的空间全部给了sram_array这个变量,他具有在at0x68000000这个地址的属性.
往里面写值就直接在SRAM里面写值.
68、内存管理有一种方式叫做分块式内存管理.
注意表中的分配方向,从顶到底.
每一项对应一个内存块.
里面的数值代表了内存池的状态:如果为0,表示该内存没有被分配;如果非0,那么数值的大小就表示了该块内存被连续占用的内存数.
比如说数值为20,意思是包括该项在内的内存块被连续占用了20块分给了指针.
69、SD卡的分类:一般的SD卡支持两种传输模式:SD卡模式(SDIO)、SPI模式.
显然前面一种是专用模式,所以速度比较快.
70、常用的汉字内码系统有GB2313、GB13000、GBK、BIG5(繁体).
其中GB2313只有几千个汉字,而GBK则有2万多汉字.
71、要显示汉字,采用的方式如果用点阵的形式是不可取的,因为这无法查找汉字.
采用的方式就是内码系统.
GBK标准中,一个汉字对应2个字节:前者称为区(0x81~0xFE)后者为(0x40~0x7E)和(0x80~0xFE).
前者有126个区,后者有190,那么可以显示的汉字数量有126*190=23940个.
根据这两个值用来查找字库,字库中存放的还是每个汉字的点阵数据.
这个字库非常大,如果是16*16的字体,那么一个字体就需要32个字节,如此说来需要23940*32=748K的空间,可见非常大,所以需要外部的Flash来存储这个字库.
72、由于汉字内码系统不具有国际通用性,但是Unicode几乎把所有的语言都放置进来,这样在单片机中操作汉字时,就需要将GBK和Unicode转化.
尤其是在FATFS中,创建中文文件名和读取中文文件信息时需要将Unicode换转为GBK后再进行修改操作,再反转换成Unicode保存修改.
这么说,两者的存在是由于标准的不统一,并且Unicode中只有6064个汉字,而GBK显然是一种汉字扩展.
73、BMP图片编码的顺序是从左到右,从下到上.
574、IAP(InApplicationProgramming)在应用编程是为了后期开发更新程序方便而提出的概念.
具体的实现方法如下图所示:在普通编程中,flash中的code是通过JTAG和ISP等工具下载到单片机中.
而在IAP编程中,flash被分区为A和B两个区域,A区域只允许用USB/USART等方式下载,此区域作为更新B区域的代码用.
B区域则是用户的code区域,真正的代码在这里被执行,放置的就是app.
上图表示STM32正常运行的流程图,可以看到上电复位后系统从0x80000004处开始运行程序,这里放置的是复位中断向量,然后跳转至复位中断程序入口后再跳转至main函数运行用户的程序.
6上图表示加入IAP后的STM32程序运行流程图.
可以看到上电复位后跳到IAP程序的main函数处运行IAP过程(这个过程就是把下面灰底色块的程序代码烧进B区域à代码更新).
后面的过程和STM32正常运行一样,如果出现中断请求,还是跳转到A区域中的中断向量表中,然后再跳转到B区域的中断服务入口.
76、USB有四根线,VCC、GND、D、D-.
在USB主机上,D和D-均通过一个15K的电阻接地,这样两条线均为低电平.
在USB设备中,对于高速设备会在D通过一个1.
5K的电阻接到VCC,而低俗设备会在D-通过一个1.
5K的电阻接到VCC.
这样主机就可以通过D和D-的高电平的到来来检测是否有设备接入,并且识别高低速设备.
77、UCOSII是一种实时操作系统,具有执行效率高、占有空间小(最小内核2KB)、实施性能优良、扩展性强和移植性强等优点.
7UCOS具有多任务并发工作的特点(注意,任何时候只有一个任务能够占用CPU.
并发只是任务轮流占用CPU而不是同时工作).
最大支持255个任务并发工作.
相关阅读:相关阅读:本文转载自:电子工程专辑免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有.
本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理.
(mbbeetchina)8
很久没有分享PhotonVPS的消息,最近看到商家VPS主机套餐有一些更新所以分享下。这是一家成立于2008年的国外VPS服务商,Psychz机房旗下的站点,主要提供VPS和独立服务器等,数据中心包括美国洛杉矶、达拉斯、芝加哥、阿什本等。目前,商家针对Cloud VPS提供8折优惠码,优惠后最低2G内存套餐每月4美元起。下面列出几款主机配置信息。CPU:1core内存:2GB硬盘:30GB NVm...
LOCVPS怎么样?LOCVPS是一家成立于2011年的稳定老牌国人商家,目前提供中国香港、韩国、美国、日本、新加坡、德国、荷兰等区域VPS服务器,所有机房Ping延迟低,国内速度优秀,非常适合建站和远程办公,所有机房Ping延迟低,国内速度优秀,非常适合做站。XEN架构产品的特点是小带宽无限流量、不超售!KVM架构是目前比较流行的虚拟化技术,大带宽,生态发展比较全面!所有大家可以根据自己业务需求...
丽萨主机怎么样?丽萨主机,团队于2017年成立。成立之初主要做的是 CDN 和域名等相关业务。最近开辟新领域,新增了独立服务器出租、VPS 等业务,为了保证业务质量从一开始就选择了中美之间的 CN2 GIA 国际精品网络,三网回程 CN2 GIA,电信去程 CN2 GIA + BGP 直连智能路由,联通移动去程直连,原生IP。适合对网络要求较高的用户,同时价格也比较亲民。点击进入:丽萨主机官方网站...
unicode转换为你推荐
0.21网易yeahfilezillaserver怎么用FileZilla Server 0.9.27 绿色汉化版软件?支付宝注册网站支付宝申请流程是怎么样的??degradeios新团网美团网是谁创办的呀?银花珠树晓来看谜语白色花无人栽一夜北风遍地开。旡根无叶又无枝不知是谁送花来。谜底是什么如何发帖子网上怎么发帖子?网站后台密码破解怎样破解网站后台管理用户名密码zencart模板求zen-cart 模板结构discuz教程Discuz! Database Error怎么解决啊?我的电脑打不开这个网啊很久了。其他电脑可以。
vps虚拟主机 私服服务器租用 vps优惠码 3322免费域名 息壤主机 bandwagonhost sockscap 512au 12306抢票助手 debian7 论坛空间 html空间 台湾谷歌网址 vip购优汇 腾讯实名认证中心 免费申请网站 上海服务器 中国电信宽带测速器 华为云服务登录 独享主机 更多