‘壹’ PIC单片机的命名规则
PIC XX XXX XXX (X) -XX X /XX 1 2 3 4 5 6 7 8 1.前缀: PIC MICROCHIP 公司产品代号,特别地:dsPIC为集成DSP功能的新型PIC单片机
2.系列号:10、12、16、18、24、30、33、32,其中
PIC10、PIC12、PIC16、PIC18为8位单片机
PIC24、dsPIC30、dsPIC33为16位单片机
PIC32为32位单片机
3.器件型号(类型):
C CMOS 电路
CR CMOS ROM
LC 小功率CMOS 电路
LCS 小功率保护
AA 1.8V
LCR 小功率CMOS ROM
LV 低电压
F 快闪可编程存储器
HC 高速CMOS
FR FLEX ROM
4.改进类型或选择
54A 、58A 、61 、62 、620 、621
622 、63 、64 、65 、71 、73 、74
42 、43 、44等
5.晶体标示:
LP 小功率晶体,
RC 电阻电容,
XT 标准晶体/振荡器
HS 高速晶体
6.频率标示:
-02 2MHZ,
-04 4MHZ,
-10 10MHZ,
-16 16MHZ
-20 20MHZ,
-25 25MHZ,
-33 33MHZ
7.温度范围:
空白 0℃至70℃,
I -45℃至85℃,
E -40℃至125℃
8.封装形式:
L PLCC 封装
JW 陶瓷熔封双列直插,有窗口
P 塑料双列直插
PQ 塑料四面引线扁平封装
W 大圆片
SL 14腿微型封装-150mil
JN 陶瓷熔封双列直插,无窗口
SM 8腿微型封装-207mil
SN 8腿微型封装-150 mil
VS 超微型封装8mm×13.4mm
SO 微型封装-300 mil
ST 薄型缩小的微型封装-4.4mm
SP 横向缩小型塑料双列直插
CL 68腿陶瓷四面引线,带窗口
SS 缩小型微型封装
PT 薄型四面引线扁平封装
TS 薄型微型封装8mm×20mm
TQ 薄型四面引线扁平封装
‘贰’ 有关单片机的分类,型号的种种疑问
呵呵,一楼二楼四楼说的对,三楼有漏洞,五楼就是一派胡言。
就我用过的一些单片机,做一下介绍吧。
因为不同厂家不同内核不同位数,单片机的型号也是不同的。
比如国内用的多的是国产宏晶的STC系列的单片机,因为学校教学使用的比较多。STC系列的全部都是51内核的,8位机,有STC89系列,STC12、STC15等等系列,因为资源不同所以分成很多的型号。
其次是Atmel公司生产的AT89系列的51内核的单片机,STC的单片机与之兼容。一般的前缀都是公司代号STC代表宏晶公司,AT代表atmel公司。当然还有恩智浦(即NXP)、SST都有生产51内核的单片机,它们的指令什么都兼容,因为它们使用的都是intel公司授权的8051内核,这些厂家都没有对8051内核做出过大的修改,无非是在外设上动些手脚。
C8051F是Silicon Lab公司的,它生产的C8051F已经不是原来的8051内核了,它对8051内核做出过修改,它们称之为增强型的51。
以上是51内核的单片机,它们都是8位机,指令一致(C8051F可能会有些不同),都是CISC(复杂指令集)。
AVR单片机是ATMEL公司A先生和V先生设计的RISC单片机,故称之为AVR,当然ATMEL公司的命名规则很有意思,AT89系列是51,AT90系列是AVR,AT91是ARM,当然AVR不止是AT90系列,还包括ATTiny系列,ATmega系列,ATXmega系列,AVR32。tiny和mega是8位的,xmega是16位,AVR32是32位的。当然你说的avr的atmega128是属于atmega系列的8位机。
PIC单片机是microchip公司生产的,它是拥有自己独立的pic内核的RISC(精简指令集)单片机,其型号有pic10、pic12、pic16、pic18系列,以上型号都是8位机,pic24是16位单片机,pic32系列是32位的。
msp430单片机是TI公司生产的,它也拥有自己的msp430内核,430系列都是16位单片机,msp430f1xx系列、msp430f2xx系列、msp430f3xx系列……当然还有4、5、6xx系列,根据功能不同,当然一般的单片机命名规则是f代表了内部是flash,当然还有otp的。430里面g系列是超值系列,比较廉价。
当然16位的单片机还有飞思卡尔的单片机MC打头的,如mc9s12x什么的,还有台湾凌阳单片机也是16位的,如SPCE061A 什么的(所谓的61单片机),他们都拥有自己的内核。
还有后起之秀stm8系列的单片机,是st(意法半导体)公司生产的,8位单片机,也是拥有自己的内核,stm8s、stm8l系列等。
虽然51依然占据的大部分市场,但是在一些特殊的应用场合,还有资源,速度,抗干扰的要求,如控制电机,一般AVR、PIC、ST用的会比较多,msp430系列用于低功耗场合,一般水电表,手持设备会用到。如果成本要求高市场上流行的还有台系的单片机,如义隆单片机,一般EM78P打头的,合泰单片机,一般ht打头的,当然还有其他chip-on什么的都是很便宜的,以上这些内核都是仿pic的,或者是日系单片机如瑞萨,常用的R8C打头的等等。
介绍了一些常用的单片机,如还有问题,可以追问
‘叁’ 单片机 RS485
单片机使用RS485通讯,可以使用全双工和半双工两种模式。半双工比较简单。
如果用半双工,根据你的工作电源,5V可以用MAX485、ST485、SP485等;3.3V用MAX3485、SP3485、ST3485等。全双工实际上就是采用两片芯片成为全双工。就是逻辑上要做点处理。
RS485采用通用串行口,增加一个发送/接收控制口(命名为RS485_CON),将单片机TX接MAX485的DI,RX接MAX485的RO,MAX485的RE和DE链接接在RS485_CON上,当RS485_CON为高时,是允许串行通讯输入,为低时,允许串行输出。MAX485输出为A、B差分信号,所以比RS232抗干扰能力强,传输距离相对RS232远。详见RS485规范。如果需要可以告诉我邮箱,发送给你。
一般我们使用时常要采用光电隔离,以保证可靠性。
在设计还要考虑网络终端要网络匹配电阻。
现在RS485的使用逐渐减少,我们现在一般留有这个口,实际很多采用CAN现场总线,通讯距离远,抗干扰好,很方便的组成一个总线网。
‘肆’ C语言中float是什么意思
C语言中float浮点型数据类型,FLOAT 数据类型用于存储单精度浮点数或双精度浮点数。浮点数使用 IEEE(电气和电子工程师协会)格式。浮点类型的单精度值具有 4 个字节,包括一个符号位、一个
8 位 excess-127 二进制指数和一个 23 位尾数。
尾数表示一个介于 1.0 和 2.0 之间的数。由于尾数的高顺序位始终为
1,因此它不是以数字形式存储的。此表示形式为 float 类型提供了一个大约在 -3.4E+38 和 3.4E+38 之间的范围。
定义输入输出举例如下:
float和double的区别:
1.指数和尾数
由于指数是以无符号形式存储的,因此指数的偏差为其可能值的一半。对于 float 类型,偏差为 127;对于 double 类型,偏差为 1023。可以通过将指数值减去偏差值来计算实际指数值。
2.浮点类型
如果存储比精度更重要,请考虑对浮点变量使用 float 类型。相反,如果精度是最重要的条件,则使用 double 类型。浮点变量可以提升为更大基数的类型(从 float 类型到 double 类型)。当您对浮点变量执行算术时,通常会出现提升。此算术始终以与具有最高精度的变量一样高的精度执行。