1、选择晶振,要根据你的单片机工作频率和工作要求来选择,例如89C51单片机振荡器频率范围为0-24Mhz。理论上你可以选择0-24M的晶振,频率越高,精度越大,处理速度越快。你如果用单片机与PC机进行串口通信,由于PC机的串口波特率是9600(常用值)你选的晶振频率还要满足9600的整数倍。
2、这个要看单片机型号了。有的是如果外部有晶振电路,就用外部晶振,如果外部没有晶振电路,就自动换成内部晶振。例如IRC15W415AS。有的是用下载软件设置使用的是外部晶振还是内部晶振。例如IAP15F2K61S2。有的是用控制寄存器来选择用的是外部晶振还是内部晶振。
3、X xtal表示外部晶振(或外接晶振)(External Crystal Oscillator)。而外部晶振常常连接至单片机的腿(PIN),常常使用XTAL加上数字表示连接外部晶振。X取的是External的其中一个字母。国外经常以X表示外部,而表示内部的用I(Internal)。Y Crystal,但C已经表示电容了,R表示电阻,所以取Y。
1、建议:(1)低成本方案,信号依然用24v来传,但是接收端在光耦前用设计一定电压范围触发的触发器,假如行程开关没有接通输出信号0v,信号线上的干扰再大也大不大十几v去而且很短暂,肯定无法触发。当行程开关接通时,虽然衰减了,但是能足以使触发器触发。
2、最直接的办法是看看有没有电源线,是无源的话,传感器的引线很少。只有两根。如果是有源的话,传感器至少有四根引线。只是最直观的分辨方法。另外传感器与单片机相连,是要通过一个A/D转换芯片的,然后才能连到单片机上,因为单片机处理的是数字信号。而传感器输出是模拟信号,中间需要一个转换芯片的。
3、有很多办法,第一个办法:有些单片机支持3个UART。用这些单片机就轻松解决。第二个办法:采用轮询的方式。增加电子开关电路。分别选择不同的通道读取。第三个办法,增加额外的通讯芯片。然后采用IIC和SPI接口与这些芯片通讯。
4、传感器的电源大概是AC220V,输出开关量,控制输出的元器件可能是电磁继电器或固态继电器。如果能把内部控制输出元器件的电压信号引出,经处理可以输入单片机。否则可用一线圈电压为AC220V的继电器转换,利用继电器的常开触头把需要的电平引入单片机。
5、可以复位51 STC AVR单片机,全部支持3TEA5767的IIC总线控制。学习IIC控制3SD卡的SPI总线控制。扩展大容量存储器3红外遥控接收器,可采集红外遥控发出的信号,可使用遥控信号控制其他设备。3外接5V供电电源座。
、看书大概了解一下单片机结构,大概了解就行。不用都看懂,又不让你出书。2 、弄了一块吴(鉴鹰)学习板练习编写程序,学单片机主要就是练编程序,遇到不会的再问人或查书。3 、自己网上找些小电路类的资料练习设计外围电路。焊好后自己调试,熟悉过程。
其次,具体一点话,要学习STM32,第一步可能要理解系统时钟,因为不管你要用到任何片内外设或者是IO口什么的,首先第一步就是要初始化时钟。至于内部寄存器,说实话确实很多,不过你用到某一块,再看那一块的寄存器,这样更有针对性。
C语言是必须的,有单片机基础的话用STM32裸奔的话,完全可以买一个开发板很容易就搞定了,要是坐做作系统的话那要花不少功夫了。耐心是必须的,不要遇到点困难就放弃了。
只要认真学,上手还是很容易的,先学会建工程,再大概地了解下固件库的结构,试着用固件库写自己的代码,短时间内还是很容易上手的。有51基础对学习STM32的帮助仅在于,从观念上知道STM32的寄存器配置原理,但是,由于STM32使用的是CortexM3内核,所以基本上要从观念上抛开51。
STM32 DMA控制器的特性STM32的DMA控制器每块拥有8个数据流,每个数据流对应8个独立通道,能管理多个外设的内存访问请求。每个数据流配置灵活,可连接不同的源和目标,且具备16字节的FIFO功能,这使得数据传输更加流畅。