单片机:修订间差异
删除的内容 添加的内容
Flyerhotai(留言 | 贡献) |
Quasiboost(留言 | 贡献) 加入{{Unreferenced}}标记 |
||
(未显示14个用户的30个中间版本) | |||
第1行:
{{Unreferenced|time=
{{noteTA|G1=IT}}
{{not|单板机}}
[[File:PIC18F8720.jpg|right|thumbnail|220px|80針腳TQFP封裝的[[PIC]]18F8720 微控制器]]
[[File:78K0S Do-It.jpg|220px|缩略图|NEC單片機78K0S开发板]]
▲'''-{zh-cn:单片机; zh-tw:單晶片}-''',全稱'''-{zh-cn:单片微型计算机; zh-tw:單晶片微電腦}-'''({{lang-en|'''single-chip microcomputer'''}}),又稱'''-{微控制器}-單元'''({{lang|en|'''microcontroller unit'''}}),是把[[中央處理器]]、[[電腦記憶體|存儲器]]、定時/計數器({{lang|en|timer/counter}})、各種[[I/O|輸入輸出接口]]等都集成在一塊[[集成電路|-{zh-hans:集成电路; zh-hant:積體電路;}-]][[芯片]]上的[[微型計算機]]。與應用在個人電腦中的通用型[[微處理器]]相比,它更強調自供應(不用外接硬件)和節約成本,整合程度更高,但因為規格已經包含,所能實現的功能也較專一。它的最大優點是體積小,可放在儀表內部,但存儲量小,輸入輸出接口簡單。由於其發展非常迅速,舊的定義已不能滿足,所以在很多應用場合被稱為範圍更廣的-{微控制器}-;由於單晶片微電腦常用於當控制器故又名single chip microcontroller。台灣翻譯時稱為「單晶片」;中國大陆則根據意譯主要採用「單片機」,英文縮寫為MCU。
== 概述 ==
绝大多数现在的单片机都是基于[[冯·诺伊曼结构]]的,这种结构清楚地定义了[[嵌入式系统]]所必需的四个基本部分:一个中央处理器核心,程序存储器(只读存储器或者[[闪存]])、数据存储器(随机存储器)、一个或者更多的定时/计数器,还有用来与外围设备以及扩展资源进行通信的输入/输出端口——所有这些都被集成在单个集成电路芯片上。
单片机与通用型中央处理单元芯片不同在于前者一般很容易配合最小型的外部支持芯片制成工作计算机,这样就可以很容易的把单片机系统植入装置内部来控制装置了。近年来为了在指令和数据上使用不同的字宽,并提高处理器线速度,[[哈佛结构]]在
传统的微处理器是不允许这么做的。它要完成单片机的工作,就必须连接一些其他芯片。比如说,因为芯片上没有数据存储器,就必须要添加一些 RAM 的存储芯片,虽然所添加存储器的容量很灵活,但是至少还是要添加。另外还需要添加很多连线来传递芯片之间的数据。与以上的情况相比,单片机的工作则相对独立,一个典型的微控制器只需要一个[[石英晶体谐振器|时钟发生器]]和很少的 RAM (SRAM) 和
单片机时钟频率通常较同时代的计算机芯片低,但它价格低廉,能够提供充足的程序存储器、丰富的片上接口。某些架构的单片机生产厂商众多,例如 [[8051]] 系列、[[Z80]] 系列。一些现代的微控制器支持一些内建的高级编程语言,比如 [[BASIC
== 单片机的位
根据[[匯流排]]或資料[[暫存器]]的宽度,单片机又分为 4 位
== 常见的单片机 ==
生產這種產品的供應商眾多而且技術各有所長,[[微芯]](Microchip)的 [[PIC]] 系列出货量居于业界领导者地位;[[Atmel]] 的 51 系列及 [[Atmel AVR|AVR]] 系列种类众多,受支持面广,滿足各種場景的市場需求;[[德州仪器]]的 [[MSP430]] 系列以低功耗闻名,常用于医疗电子产品及仪器仪表中;[[瑞萨]]单片机在日本汽車業中使用广泛。
[[File:W65C265S8PL-8 lg.jpg|220px|缩略图|WDC的W65C265S8PL單晶片]]
第49行 ⟶ 第48行:
** CY8C2xxxx ([[可编程片上系统|PSoC]])
* [[飞思卡尔|飞思卡尔半导体]](原[[摩托罗拉]])
** 8-bit
*** 68HC05 (CPU05)
第83行 ⟶ 第82行:
** 78K
* [[恩智浦半导体]](原[[飞利浦]])
** LPC2000
** LPC900
第91行 ⟶ 第90行:
** [[BASIC Stamp]]
* [[瑞萨科技]]系列单片机(由原[[日立製作所|日立]],NEC,三菱合并)
** Renesas 16-bits
*** Renesas M16C Series
第104行 ⟶ 第103行:
** STM8 series (自主RISC指令集,8位元)
* SyncMOS
** SM59RXXA2 8-bits 1T(RISC)
** SM59DXXG2 8-bits 6T(ISP)
第111行 ⟶ 第110行:
** SM79XX 8-bits 12T(Customization)
* PADAUK
** P201CS/CD 8-bits
** P211CS/CD 8-bits
第122行 ⟶ 第121行:
* STC 宏晶系列单片机
** STC89C series 6T/12T 增强性单片机 (Intel 8051架构,有外部总线)
** STC11F/11L series 2T 增强性单片机 (Intel 8051增强架构,无外部总线程序支持)
** STC12C/12LE series 2T 增强性单片机 (Intel 8051增强架构,无外部总线程序支持)
第146行 ⟶ 第145行:
== 单片机的开发 ==
单片机的软件开发中,以往多使用[[組合語言|汇编语言]],如今越来越多的使用 C 语言,又或者使用 [[BASIC语言]] 等更适合初学者的语言,部分[[集成开发环境]]支持C++。单片机的[[软件测试]]需要使用[[单片机开发器]]或[[模拟器|模擬器]]。
随着技术的发展,2000年后已经有很多单片机自带了ISP(在线编程设计)或支持IAP,彻底地改变了传统的开发模式,使得开发单片机系统时不会损坏芯片的引脚,加速了产品的上市并降低了研发成本,缩短了从设计、制造到现场调试的时间,简化了生产流程,大大提高了工作效率。这类单片机包括AT89S系列单片机、AVR系列单片机等。
=== 硬件 ===
开发板可以进一步简化程序的开发和烧制过程。开发板可能包含实际芯片或是[[仿真器]]。通过配套的下载线连接电脑与开发板,在电脑上编写程序下载到开发板。批量生产会用到编程器,或是掩膜印刷方式(Mask ROM),后者是芯片本身终身搭载固定程序(不可重新编程),意味着仅适用于特定成品。
=== 软件開發環境 ===
一些知名的微控制器開發環境有:
* [[微芯]]公司的 MPLAB [[集成开发环境|IDE]] 可用於該公司全系列微控制器的開發與除錯,除支持該公司的 ASM[[組譯器]] [[C语言]][[編譯器]]外,也支援許多第三方的編譯器。
* [[ARM]]公司的 μVision [[整合開發環境]](原為 Keil 公司產品,2005年該公司已由 ARM 購併),包含組譯器與 C編譯器,可用于51单片机及ARM开发。
* ARM公司的[[Mbed]],可以使用線上IDE來開發。
====
[[Proteus]] 软件是初学者入门的首选软件,它是 Labcenter Electronics 公司的一款商业版电路设计与仿真软件。內包括 ISIS、ARES 等软件模块。ARES 模块主要用来完成 PCB 的设计,ISIS 模块用来完成电路原理图的布图与仿真。
Proteus 的软件仿真基于 VSM 技术,它与其他软件最大的不同也是最大的优势就在于能仿真大量的单片机芯片,比如 MCS-51 系列、PIC 系列等等,甚至 ARM 处理器,以及单片机外围电路,比如键盘、LED、LCD 等等。该软件还附带了一些案例和丰富的帮助文件。
== 参见 ==▼
* [[微处理器]]、[[數位訊號處理器]]、[[单板机]]▼
* [[嵌入式操作系统]]▼
* [[系統單晶片]]▼
* [[工業電腦]]▼
* [[数字信号控制器]]▼
== 参考文献 ==
第172行 ⟶ 第178行:
* [https://web.archive.org/web/20120919184446/http://www.51hei.com/ 一个免费提供单片机教程的网站]
▲== 参见 ==
▲* [[微处理器]]、[[數位訊號處理器]]、[[单板机]]
▲* [[嵌入式操作系统]]
▲* [[系統單晶片]]
▲* [[工業電腦]]
▲* [[数字信号控制器]]
{{-}}
{{CPU technologies}}
|