1. 国内单片机公司
单片机属于底层设计,适合电子制造业的公司
2. 国内单片机生产厂家
STC单片机是国产的,厂家是宏晶科技。
3. 主流单片机公司
广州周立功单片机科技有限公司不错。
广州周立功单片机科技有限公司于1999年成立。自主研发产品:嵌入式工业自动化与通讯网络产品和解决立案、嵌入式测量测试仪器、嵌入式系统集成开发环境、楼宇自动化产品和解决方案、嵌入式系统教学产品等。
4. 国内单片机公司排名
01 幻尔
幻尔品牌创建于2015年,目前品牌幻尔主要的经营产品有:机械臂,人形机器人,金属舵机,可编程机器人,智能机器,机器人套件,智能电动车,智能穿戴,单片机烧录器等。
02 墨比斯/MOEBIUS
墨比斯品牌,英文名MOEBIUS,品牌墨比斯主营产品涵盖机械臂,金属舵机,机器人套件,人形机器人,智能机器,可编程机器人,智能电动车,倾角传感器,主动轮,设备包等领域。
03 robospace/robospace
目前robospace经营的产品覆盖到智能机器人玩具,可编程机器人,人形机器人,机器人套件,机械臂,智能机器,翻译神器,特技机,智能穿戴,对话机器人,设备包,智能电动车,智能球,智能眼镜,儿童定位手表等行业。
5. 国内单片机公司排行榜
中国mcu公司排名一——中颖电子股份有限公司
中颖电子是家电MCU市场的龙头企业。锂电池管理芯片和AMOLED显屏芯片是公司的增量业务。
中颖电子本着专业专精的精神,专注于单片机(MCU)产品集成电路设计。MCU母体包括4-bit OTP/MASK MCU、8-bit OTP/MASK MCU、8-bit FLASH MCU,主要应用于各种小家电、白色家电、黑色家电、汽车电子周边、运动器材、医疗保健、四表(水、电、气、暖) 、仪器仪表、安防、电源控制、马达控制、工业控制、变频、数码电机、计算机键盘、鼠标、网络音乐(便携式、车载、床头音响)、无线儿童监控器、无线耳机/喇叭/门铃。
6. 单片机国内外品牌
推荐用stc的STC-ISP烧写器最好
7. 中国的单片机公司
目前企业应用最多的是STM32单片机,这种单片机是意法半导体公司(意大利SGS公司和法国THOMSON公司合并而成)研制的,功能齐全,品种众多。该公司为使用者提供了非常完善的函数库,使得编程和应用变得很简单,这也是目前这款单片机应用非常广泛的原因之一。
但是,由于现在西方对中国的技术打压,使得这种单片机在中国市场上的售价上涨了十倍甚至上百倍。另外,这种单片机的抗干扰能力不是很强,使用的时候需要注意。
8. 国内单片机公司有哪些
Intel(美国英特尔)公司:MCS-51/96及其增强型列。
NS(美国国家半导体)公司:NS8070系列。
RCA(美国无线电)公司:CDP1800系列。
TI(美国得克萨斯仪器仪表)公司:TMS700系列。
Cypress(美国Cypress半导体)公司:CYXX系列。
Rockwell(美国洛克威尔)公司:6500系列。
Motorola(美国摩托罗拉)公司:6805系列。
Fairchild(美国仙童)公司:FS系列及3870系列。
Zilog(美国齐洛格)公司:Z8系列及SUPER8系列。
9. 国内单片机厂商
这种现象很正常,可能是每一个嵌入式从业者都可能遇到,因为嵌入式软件的难度不是线性增加,而是陡然提升的。对于接触过51单片机的开发者来说,在学习STM过程中掌握GPIO,串口,时钟,定时器等模块并不困难,虽然配置的寄存器更多,功能也更复杂,但其实思路是一脉相承的,有这个基础在,而且这些模块本身并不复杂,所以你掌握的很顺利。
至于你学习FSMC驱动LCD卡住,主要原因如下:
1.对FSMC模块执行流程和工作原理不理解
2.对设备的驱动实现没有清晰认知
在51单片机学习中虽然接触了串口,甚至SPI和I2C接口这些知识,但只是学会了用,没有系统理解背后关于串行数据接口和并行数据接口的知识,FSMC就是典型的并行数据接口(数据的各位同时进行传输),可以简单的理解写入流程如下:
1. 代码在写入指定bank地址的值后,FSMC模块控制并行的输出到DATA引脚上[15:0]。
2. FSMC模块根据当前配置,产生一定的时序(写入时序) -- 寄存器/RAM片选,读写使能,时钟信号。
3. LCD根据时序将DATA引脚上的电平转化为数据赋值到相应的寄存器或者数据RAM中,并显示结果。
理解了这些,在结合STM32的外设配置的基本知识,就能够理解GPIO初始化,FSMC模块配置,写数据/地址接口这部分代码的实现了。
这些接口理解了,剩下的难点其实就是LCD内部寄存器的配置那一串冗长的寄存器配置代码了,在不理解LCD内部原理和初始化流程的情况如何实现其实是很困难的(包括现在的我),但这部分其实在购买相应厂商的LCD屏幕时都会提供相应的寄存器初始化参数表,大概类似于如下寄存器列表:
REG, VALUE
0x00E3, 0x3008
0x00E7, 0x0012
....
0x00EF, 0x1231
如果已经理解上面封装的接口,直接按照顺序调用就可以了,如
LCD_WR_CMD(0x00E3, 0x3008);
不过学会查看LCD的驱动手册有时也是必要的,因为官方给的是标准配置,在某些情况下可能不满足需求,就需要自己查看寄存器去修改配置,成功驱动点亮了LCD屏幕,下面就可以在屏幕上显示文字图片了。到这一步基本完成了驱动,但对于单片机的图像显示和应用其实才刚刚开始,后续就是要了解学习StemWin,掌握单片机实现图形界面的功能,理解图像显示的编码,掌握中英文汉字字库的知识,这就是应用方面的问题了,不在详述。
其实对于大部分外设,如FLASH,LCD,PHY,EPPROM,CMOS等设备内部都有一系列用于访问状态和配置的寄存器,这部分知识零碎,一般也很难系统学习,不过在你多学习掌握几个外设芯片后,自然能够总结解决问题的经验。上面我讲解了FSMC驱动实现的思路和外设驱动配置的流程,对你理解FSMC模块,或者LCD驱动部分也许有用,但是如果后面用到以太网,需要配置PHY模块驱动和接口时,或者用到USB协议,需要掌握USB模块驱动时,这些涉及复杂时序和通讯协议接口时,还是会觉得不得入门,可能会卡的时间比FSMC更久。事实上,我在最初接触FSMC的时候,也看的很迷茫,上千行代码且缺少注释,根本不是那个水平的我能够掌握理解的,现在我能够理解这部分知识,也不过是熟能生巧而已。
在嵌入式入门时遇到复杂驱动设备时,如PHY,TFT-LCD,CMOS,USB时,网上或开发板提供的驱动代码直接用就可以,这在初期并没有任何问题,不要去深究内部的原理。事实上在初期去深究这些代码是很浪费时间的事,但遇到简单的驱动,如SPI-FLASH,传感器等时,就可以先总结积累经验,有一定基础后,在反过来去理解复杂的驱动代码。这种经验在完成实际项目时很重要,如遇到复杂模块BLE,ETH,USB等不理解,或者复杂如LWIP,USB协议不理解,千万不要直接拿着源码去深究,这是事倍功半的事,先仿照官方代码/开源方案配合其它模块把框架和功能实现,在后期调试时遇到模块相关问题,根据之前积累的经验,结合资料,在反过来单步调试和理解,这样可以抓住和应用相关的重点分析解决,避免了进度的拖延,而且随着项目积累的经验水平,也可以更有目的的针对理解解决。
另外嵌入式现在资料真的很多,不过如果学习stm32的话,比较推荐的就几个,中/英文版本的<STMxxx参考手册>
, <Cortex-M3权威指南>
, 以及你使用开发板的应用手册,<C Primer Plus>
和MDK中的关于汇编和编译选项的说明,如果用到某些外设芯片,在加上对应的芯片手册,尤其是STM的参考手册,没有比它更全面,准确,细致的讲解STM系列的芯片,很多时候看其它综合性的文档说明,真不如花时间去理解掌握参考手册。