i2c加密
『壹』 誰知道計算機方面的英文術語是哪些英文縮寫最好有中文注釋
3GIO(Third Generation InputOutput,第三代輸入輸出技術)
ACR(Advanced Communications Riser,高級通訊升級卡)
ADIMM(advanced Dual In-line Memory Moles,高級雙重內嵌式內存模塊)
AGTL+(Assisted Gunning Transceiver Logic,援助發射接收邏輯電路)
AHCI(Advanced Host Controller Interface,高級主機控制器介面)
AIMM(AGP Inline Memory Mole,AGP板上內存升級模塊)
AMR(Audio/Modem Riser;音效/數據機主機板附加直立插卡)
AHA(Accelerated Hub Architecture,加速中心架構)
AOI(Automatic Optical Inspection,自動光學檢驗)
APU(Audio Processing Unit,音頻處理單元)
ARF(Asynchronous Receive FIFO,非同步接收先入先出)
ASF(Alert Standards Forum,警告標准討論)
ASK IR(Amplitude Shift Keyed Infra-Red,長波形可移動輸入紅外線)
AT(Advanced Technology,先進技術)
ATX(AT Extend,擴展型AT)
BIOS(Basic InputOutput System,基本輸入輸出系統)
CNR(Communication and Networking Riser,通訊和網路升級卡)
CSA(Communication Streaming Architecture,通訊流架構)
CSE(Configuration Space Enable,可分配空間)
COAST(Cache-on-a-stick,條狀緩存)
DASP(Dynamic Adaptive Speculative Pre-Processor,動態適應預測預處理器)
DB Device Bay,設備插架
DMI(Desktop Management Interface,桌面管理介面)
DOT(Dynamic Overclocking Technonlogy,動態超頻技術)
DPP(direct print Protocol,直接列印協議
DRCG(Direct Rambus clock generator,直接RAMBUS時鍾發生器)
DVMT(Dynamic Video Memory Technology,動態視頻內存技術)
E(Economy,經濟,或Entry-level,入門級)
EB(Expansion Bus,擴展匯流排)
EFI(Extensible Firmware Interface,擴展固件介面)
EHCI(Enhanced Host Controller Interface,加強型主機端控制介面)
EISA(Enhanced Instry Standard Architecture,增強形工業標准架構)
EMI(Electromagnetic Interference,電磁干擾)
ESCD(Extended System Configuration Data,可擴展系統配置數據)
ESR(Equivalent Series Resistance,等價系列電阻)
FBC(Frame Buffer Cache,幀緩沖緩存)
FireWire(火線,即IEEE1394標准)
FlexATX(Flexibility ATX,可擴展性ATX)
FSB(Front Side Bus,前端匯流排)
FWH(Firmware Hub,固件中心)
GB(Garibaldi架構,Garibaldi基於ATX架構,但是也能夠使用WTX構架的機箱)
GMCH(Graphics & Memory Controller Hub,圖形和內存控制中心)
GPA(Graphics Performance Accelerator,圖形性能加速卡)
GPIs(General Purpose Inputs,普通操作輸入)
GTL+(Gunning Transceiver Logic,發射接收邏輯電路)
HDIT(High Bandwidth Differential Interconnect Technology,高帶寬微分互連技術)
HSLB(High Speed Link Bus,高速鏈路匯流排)
HT(HyperTransport,超級傳輸)
I2C(Inter-IC)
I2C(Inter-Integrated Circuit,內置集成電路)
IA(Instantly Available,即時可用)
IBASES(Intel Baseline AGP System Evaluation Suite,英特爾基線AGP系統評估套件)
IC(integrate circuit,集成電路)
ICH(InputOutput Controller Hub,輸入輸出控制中心)
ICH-S(ICH-Hance Rapids,ICH高速型)
ICP(Integrated Communications Processor,整合型通訊處理器)
IHA(Intel Hub Architecture,英特爾Hub架構)
IMB(Inter Mole Bus,隱藏模塊匯流排)
INTIN(Interrupt Inputs,中斷輸入)
IPMAT(Intel Power Management Analysis Tool,英特爾能源管理分析工具)
IR(infrared ray,紅外線)
IrDA(infrared ray,紅外線通信介面,可進行區域網存取和文件共享)
ISA(Instry Standard Architecture,工業標准架構)
ISA(instruction set architecture,工業設置架構)
K8HTB(K8 HyperTransport Bridge,K8閃電傳輸橋)
LSI(Large Scale Integration,大規模集成電路)
LPC(Low Pin Count,少針腳型介面)
MAC(Media Access Controller,媒體存儲控制器)
MBA(manage boot agent,管理啟動代理)
MC(Memory Controller,內存控制器)
MCA(Micro Channel Architecture,微通道架構)
MCC(Multilayer Ceramic Capacitor,積層陶瓷電容)
MCH(Memory Controller Hub,內存控制中心)
MDC(Mobile Daughter Card,移動式子卡)
MII(Media Independent Interface,媒體獨立介面)
MIO(Media IO,媒體輸入輸出單元)
MOSFET(metallic oxide semiconctor field effecttransistor,金屬氧化物半導體場效應晶體管)
MRH-R(Memory Repeater Hub,內存數據處理中心)
MRH-S(SDRAM Repeater Hub,SDRAM數據處理中心)
MRIMM(Media-RIMM,媒體RIMM擴展槽)
MSI(Message Signaled Interrupt,信息信號中斷)
MSPCE(Multiple Streams with Pipelining and Concurrent Execution,多重數據流的流水線式傳輸與並發執行)
MT=MegaTransfers(兆傳輸率)
MTH(Memory Transfer Hub,內存轉換中心)
MuTIOL(Multi-Threaded IO link,多線程IO鏈路)
NCQ(Native Command Qu,本地命令序列)
NGIO(Next Generation InputOutput,新一代輸入輸出標准)
NPPA(nForce Platform Processor Architecture,nForce平台處理架構)
OHCI(Open Host Controller Interface,開放式主控制器介面)
ORB(operation request block,操作請求塊)
ORS(Over Reflow Soldering,再流回焊接,SMT元件的焊接方式)
P64H(64-bit PCI Controller Hub,64位PCI控制中心)
PCB(printed circuit board,印刷電路板)
PCBA(Printed Circuit Board Assembly,印刷電路板裝配)
PCI(Peripheral Component Interconnect,互連外圍設備)
PCI SIG(Peripheral Component Interconnect Special Interest Group,互連外圍設備專業組)
PDD(Performance Driven Design,性能驅動設計)
PHY(Port Physical Layer,埠物理層)
POST(Power On Self Test,加電自測試)
PS2(Personal System 2,第二代個人系統)
PTH(Plated-Through-Hole technology,鍍通孔技術)
RE(Read Enable,可讀取)
QP(Quad-Pumped,四倍泵)
RBB(Rapid BIOS Boot,快速BIOS啟動)
RNG(Random number Generator,隨機數字發生器)
RTC(Real Time Clock,實時時鍾)
KBC(KeyBroad Control,鍵盤控制器)
SAP(Sideband Address Port,邊帶定址埠)
SBA(Side Band Addressing,邊帶定址)
SBC(single board computer,單板計算機)
SBP-2(serial bus protocol 2,第二代串列匯流排協協)
SCI(Serial Communications Interface,串列通訊介面)
SCK (CMOS clock,CMOS時鍾)
SDU(segment data unit,分段數據單元)
SFF(Small Form Factor,小尺寸架構)
SFS(Stepless Frequency Selection,步進頻率選項)
SMA(Share Memory Architecture,共享內存結構)
SMT(Surface Mounted Technology,表面黏貼式封裝)
SPI(Serial Peripheral Interface,串列外圍設備介面)
SSLL(Single Stream with Low Latency,低延遲的單獨數據流傳輸)
STD(Suspend To Disk,磁碟喚醒)
STR(Suspend To RAM,內存喚醒)
SVR(Switching Voltage Regulator,交換式電壓調節)
THT(Through Hole Technology,插入式封裝技術)
UCHI(Universal Host Controller Interface,通用宿主控制器介面)
UPA(Universal Platform Architecture,統一平台架構)
UPDG(Universal Platform Design Guide,統一平台設計導刊)
USART(Universal Synchronous Asynchronous Receiver Transmitter,通用同步非同步接收傳送器)
USB(Universal Serial Bus,通用串列匯流排)
API(Application Programming Interfaces,應用程序介面)
ASCII(American Standard Code for Information Interchange,美國國家標准信息交換代碼)
ATL ActiveX Template Library(ActiveX模板庫)
BASICBeginner's All-purpose Symbolic Instruction Code(初學者通用指令代碼)
COM Component Object Model(組件對象模式)
DNA Distributed Internet Application(分布式網際網路應用程序)
HLL(high level language,高級語言)
HLLCA(High-Level Language Computing Architecture,高級語言計算架構)
MFC Microsoft Foundation Classes(微軟基礎類庫)
NVSDK(nVidia Software Development Kit,nvidia軟體開發工具包)
SDK(Software Development Kit,軟體開發工具包)
STL(Standard Template Library,標准模版庫)
AES(Attachment Execution Service,附件執行服務)
ASF(Advanced Streaming Format,高級數據流格式)
ASP(Active Server Pages,活動服務頁)
BRC(Beta Release Candidate,測試發布候選版0)
CE(Consumer Electronics,消費電子)
COA(Certificate of Authenticity,真品證明書)
DCOM(Distributing Component Object Model,分布式組成物體模塊)
DCE(Desktop Composition Engine,桌面組成引擎)
DEP(data execution prevention,數據執行預防)
DHCP(Dynamic Host Configuration Protocol,動態主機分配協議)
DID(Device ID,設備ID)
dll(dynamic link library,動態鏈接庫)
DMF Distribution Media Format
DMT(Discreet Monitor Timing,智能型顯示器調速)
DOM(Document Object Model,文檔目標模型)
DUN(Dial-Up Networking,撥號網路)
E-WDM(Enhanced Windows Driver Model,增強型視窗驅動程序模塊)
EULA(End-User License Agreement,最終用戶釋放協議)
EPM(enterprise project manage)
ERD(Emergency Repair Disk,應急修理磁碟)
GDI(Graphics Device Interface,圖形設備介面)
GUI(Graphics User Interface,圖形用戶界面)
GPF(General protect fault,一般保護性錯誤)
GTF(General Timing Formula,普通調速方程式)
HCL(Hardware Compatibility List,硬體兼容性列表)
HCRP(Hard Cable Replacement Profile,硬復制電纜復位協議子集)
HE(Home Edition,家庭版)
HTA HyperText Application,超文本應用程序
IAS(Internet Authentication Service,網際網路證明服務)
ICF(Internet Connection Firewall,網際網路連接防火牆)
IIS(Internet Information Server,網際網路信息伺服器)
INF File(Information File,信息文件)
INI File(Initialization File,初始化文件)
IOMON(Intel WDM IO Subsystem Performance Monitor,英特爾WDM輸入輸出子系統性能監視)
LOB(Large Object,大型對象)
MBSA(Microsoft Baseline Security Analyzer,微軟基準安全分析器)
ME(Millennium Edition,千年版)
MMC(Microsoft Management Console,微軟管理控制台)
MMC(MultiMedia Controler,多媒體控制器)
MTP(Microsoft Multimedia Transport Protocol,微軟多媒體傳輸器協議)
MUI(Multilingual User Interface,多語言用戶介面)
NDIS Network Driver Interface Specification,網路驅動程序介面規范
NT(New Technology,新技術)
OLE(Object Linking and Embedding,對象鏈接和嵌入)
OPP(Object Push Profile,物體推拉傳輸協議)
PAN(Personal Area Networking,個人區域網路)
Qos(Quality of Service,服務質量)
RC(Release Candidate,候補釋放版)
RDP(Remote Desktop Protocol,遠程桌面協議)
RMS(Rights Management Services,版權管理服務)
RPC(remote procere calls,遠程程序呼叫)
RRVP Resource ReserVation Protocol(資源保留協議)
RsoP(Resultant Set of Policy,方針結果規定)
RTM(release to manufacture,廠商版,公開發行批量生產)
RTOS(Real Time Operating Systems,實時操作系統)
SBFS Simple Boot Flag Specification,簡單引導標記規范
SDP(Service Discovery Protocol,服務發現協議)
SHS(Shell Scrap Object,外殼剪貼對象)
SID(Subsystem ID,子系統ID)
SIP(Session Initiation Protocol,會議起始協議)
SMS(Systems Management Server,系統管理伺服器)
SP(Service Pack,服務工具包)
SVID(Subsystem Vendor ID,子系統銷售者ID)
VBA(Visual Basic for Applications,應用程序可視化Basic)
VEFAT Virtual File Allocation Table(虛擬文件分配表)
VSDS(Visual Studio development System ,虛擬工作室發展系統)
VxD(Virtual device drivers,虛擬設備驅動程序)
VID(Vendor ID,銷售者ID)
VLK(Volume License,大量授權企業版)
WebDAV(Web-based Distributed Authoring and Versioning,基於網頁的分布式創造和翻譯)
WDM(Windows Driver Model,視窗驅動程序模塊)
WGF(Windows Graphic Foundation,視窗圖形基礎)
Winsock Windows Socket,視窗套介面
WFP(Windows File Protection,視窗文件保護)
WHQL Windows Hardware Quality Labs,Windows硬體質量實驗室
WHS Windows Scripting Host,視窗腳本程序
WMA(Windows Media Audio,視窗媒體音頻)
WMP(Windows Media Player,視窗媒體播放器)
WMS(Windows Media Services,視窗媒體服務)
ZAM Zero Administration for Windows,零管理視窗系統
CSS(Cascading Style Sheets,層疊格式表)
DCD Document Content Description for XML XML文件內容描述
DTD Document Type Definition,文件類型定義
DTXS(Decryption Transform for XML Signature,XML簽名解密轉換)
HTML(HyperText Markup Language,超文本標記語言)
JVM(Java Virtual Machine, Java虛擬機)
OJI Open Java VM Interface,開放JAVA虛擬機介面
SDML(Small Device Markup Language,小型設備標示語言)
SGML Standard Generalized Markup Language,標准通用標記語言
SMIL Synchronous Multimedia Integrate Language(同步多媒體集成語言)
VRML:Virtual Reality Makeup Language,虛擬現實結構化語言
VXML(Voice eXtensible Markup Language,語音擴展標記語言)
XML Extensible Markup Language(可擴展標記語言)
XMLESP(XML Encryption Syntax and Processing,XML加密語法和處理)
XSL(Extensible Style Sheet Language,可擴展設計語言)
XSLT(Extensible Stylesheet Language Transformation,可擴展式表語言轉換)
ABB(Advanced Boot Block,高級啟動塊)
ABP Address Bit Permuting,地址位序列改變
ADT(Advanced DRAM Technology,先進DRAM技術聯盟)
AL(Additive Latency,附加反應時間)
ALDC(Adaptive Lossless Data Compression,適應無損數據壓縮)
APM(Automated Precision Manufacturing,自動化精確生產)
ATC(Access Time from Clock,時鍾存取時間)
ATP(Active to Precharge,激活到預充電)
BEDO(Burst Enhanced Data-Out RAM,突發型數據增強輸出內存)
BPA(Bit Packing Architecture,位封包架構)
AFC media(antiferromagnetically coupled media,反鐵磁性耦合介質)
BLP(Bottom Leaded Package,底部導向封裝)
BSRAM(Burst pipelined synchronous static RAM,突發式管道同步靜態存儲器)
CAS(Column Address Strobe,列地址控制器)
CCT(Clock Cycle Time,時鍾周期)
CDRAM(Cache DRAM,附加緩存型DRAM)
CL(CAS Latency,CAS反應時間)
CMR(Colossal Magnetoresistive,巨磁阻抗)
CPA(Close Page Autoprecharge,接近頁自動預充電)
CSP(Chip Size Package,晶元尺寸封裝)
CTR(CAS to RAS,列地址到行地址延遲時間)
DB Deep Buffer(深度緩沖)
DD(Double Side,雙面內存)
DDBGA(Die Dimension Ball Grid Array,內核密度球狀矩陣排列)
DDR(Double Date Rate,上下行雙數據率)
DDR SDRAM(Double Date Rate,上下行雙數據率SDRAM)
DRCG(Direct Rambus Clock Generator,直接RAMBUS時鍾發生器)
DIL(al-in-line)
DIVA(Data IntensiVe Architecture,數據加強架構)
DIMM(Dual In-line Memory Moles,雙重內嵌式內存模塊)
DLL(Delay-Locked Loop,延時鎖定循環電路)
DQS(Bidirectional data strobe,雙向數據濾波)
DRAM(Dynamic Random Access Memory,動態隨機存儲器)
DRDRAM(Direct RAMBUS DRAM,直接內存匯流排DRAM)
DRSL(Direct RAMBUS Signaling Level,直接RAMBUS信號級)
DRSL(Differential Rambus Signaling Levels,微分RAMBUS信號級)
DSM(Distributed shared memory,分布式共享內存)
ECC(Error Checking and Correction,錯誤檢查修正)
ED(Execution driven,執行驅動)
EDO(Enhanced Data-Out RAM,數據增強輸出內存)
EHSDRAM(Enhanced High Speed DRAM,增強型超高速內存)
EL DDR(Enhanced Latency DDR,增強反應周期DDR內存)
EMS(Enhanced Memory System,增強內存系統)
EMS(Expanded Memory Specification,擴充內存規格)
EOL(End of Life,最終完成產品)
EPROM(erasable, programmable ROM,可擦寫可編程ROM)
EPOC(Elevated Package Over CSP,CSP架空封裝)
EPV(Extended Voltage Proteciton,擴展電壓保護)
ESDRAM(Enhanced SDRAM,增強型SDRAM)
ESRAM(Enhanced SRAM,增強型SRAM)
EEPROM(Electrically Erasable Programmable ROM,電擦寫可編程只讀存儲器)
FCRAM(Fast Cycle RAM,快周期隨機存儲器)
FEMMA(Foldable Electronic Memory Mole Assembly,折疊電子內存模塊裝配)
FM(Flash Memory,快閃記憶體)
FMD ROM (Fluorescent Material Read Only Memory,熒光質只讀存儲器)
FPM(Fast Page Mode,快頁模式內存)
HDSS( Holographic Data Storage System,全息數據存儲系統)
HMC(holographic media card,全息媒體卡)
HMD(holographic media disk,全息媒體磁碟)
HSDRAM(High Speed DRAM,超高速內存)
LRU(least recently used,最少最近使用)
MADP(Memory Address Data Path,內存地址數據路徑)
MDRAM(Multi Bank Random Access Memory,多儲蓄庫隨機存儲器)
MRAM(Magnetic Random Access Memory,磁性隨機存取存儲器)
ns(nanosecond,納秒,毫微秒,10億分之一秒)
NVRAM(Non-Volatile RAM,非可變性RAM)
NWX(no write transfer,非寫轉換)
ODR(Octal Data Rate,八倍數據率)
ODT(on-die termination,片內終結器)
OP(Open Page,開放頁)
PIROM:Processor Information ROM,處理器信息ROM
PLEDM Phase-state Low Electron(hole)-number Drive Memory
PLL(Phase Lock Loop,相位鎖定環)
PRISM(Photorefractive Information Storage Material,攝影折射信息存儲原料)
PROM(Programmable Read Only Memory,可編程只讀存儲器)
PTA(Precharge to Active,預充電到激活)
QBM(Quad Band Memory,四倍邊帶內存)
QRSL(Quad Rambus Signaling Levels,四倍RAMBUS信號級)
RAC(Rambus Asic Cell,Rambus集成電路單元)
RAC(Row Access Time,行存取時間)
RAM(Random Access Memory,隨機存儲器)
RAS(Row Address Strobe,行地址控制器)
RAT(Precharge to Active Trp,預充電到激活時間)
RCD(Row to Cas Delay,行地址到列地址控制器延遲時間)
RDF(Rambus Developer Forum,RAMBUS發展商論壇)
RDRAM(Rambus Direct RAM,直接型RambusRAM)
RIMM(RAMBUS In-line Memory Moles,RAMBUS內嵌式內存模塊)
ROM(read-only memory,只讀存儲器)
RRAM(Resistance RAM,非揮發性阻抗存儲器)
RP(RAS Pre-charge Times,行地址預充電時間)
RL(Read Latency,讀取反應時間)
SCP(CHIP SCALE PACKGE,晶元比例封裝)
SD(Single Side,單面內存)
SDRAM(Synchronous Dynamic RAM,同步動態內存)
SDR(Single Date Rate,單數據率)
SDR SDRAM(Single Date Rate,單數據率SDRAM)
SGRAM(synchronous graphics RAM,同步圖形隨機儲存器)
SIMM(Single Inline Memory Mole,單邊直線內存模塊)
SLM(Spatial Light Molator,空間光線調節器)
SM(Smart Media,智能存儲卡)
SMRAM(System Management RAM,系統管理內存)
SODIMM(Small Outline Dual In-line Memory Moles,小型雙重內嵌式內存模塊)
SPD(Serial Presence Detect,串列存在檢查)
SRAM(Static Random Access Memory,靜態隨機存儲器)
SRAM(single-transistor DRAM,單晶體管DRAM)
SSFDC(Solid State Floppy Disk Card,固態軟盤卡,通常指Smart Media)
SSTL(Stub Series Terminated Logic,殘余連續終結邏輯電路)
TCP(Tape Carrier Packaging,帶載封裝)
TCSR(temperature compensated self refresh,溫度補償自刷新)
TD(Trace driven,追蹤驅動)
TOM(Top of main memory,主內存頂端)
TSOPs(thin small outline packages,小型薄型封裝)
UMA(Upper Memory Area,上部內存區)
ULVS(ultra low voltage signal,超低電壓信號)
USWV(Uncacheable, Speculative, Write-Combining非緩沖隨機混合寫入)
VCRAM(Virtual Channel Memory,虛擬通道內存)
VCMA(Virtual Channel Memory architecture,虛擬通道內存結構)
VCSDRAM(Virtual Channel SDRAM,虛擬通道內存)
VM(Virtual Memory,虛擬存儲器)
VR(Virtual Register,虛擬寄存器)
WBGA(Windows-BGA,WBGA的面積尺寸為傳統TSOP封裝的36.52%,重量為傳統TSOP的23.37%,整個WBGA的面積與內核的比例為128%,也就是說,封裝的面積僅比管芯大28%。
WL(Write Latency,寫反應時間)
WORM(write-onceread many,寫一次讀多次介質)
XDR(eXtreme Data Rate,極速數據率)
XMS(Extended Memory,擴展內存)
『貳』 自學嵌入式的流程是什麼
原文鏈接:網頁鏈接
嵌入式linux學習路線圖
我是1999年上的大學,物理專業。在大一時,我們班裡普遍彌漫著對未來的不安,不知道學習了物理後出去能做什麼。你當下的經歷、當下的學習,在未來的一天肯定會影響到你。畢業後我們也各自找到了自己的職業:出國深造轉行做金融、留校任教做科研、設計晶元、寫程序、創辦公司等等,這一切都離不開在校時學到的基礎技能(數學、IT、電子電路)、受過煅煉的自學能力。
所以,各位正在迷茫的在校生,各位正在嘗試轉行的程序員,未來一定有你的位置,是好是壞取決於你當下的努力與積累。
我不能預言幾年後什麼行業會熱門,也不能保證你照著本文學習可以發財。我只是一個有十幾年經驗的程序員,給對編程有興趣的你,提供一些建議。
1.程序員的三大方向
程序員的方向,一般可以分為3類:專業領域、業務領域、操作系統領域。你了解它們後,按興趣選擇吧。
對於專業領域,我提供不了建議。
業務,也就是應用程序,它跟操作系統並不是截然分開的:
①開發實體產品時,應用程序寫得好的人,有時候需要操作系統的知識,比如調度優先順序的設置、知道某些函數可能會令進程休眠。
②寫應用程序的人進階為系統工程師時,他需要從上到下都了解,這時候就需要有操作系統領域的知識了,否則,你怎麼設計整個系統的方案呢?
③做應用程序的人,需要了解行業的需求,理解業務的邏輯。所以,當領導的人,多是做應用的。一旦鑽入了某個行業,很難換行業。
④而操作系統領域,做好了這是通殺各行業:他只負責底層系統,在上面開發什麼業務跟他沒關系。這行很多是技術宅,行業專家。
⑤操作系統和業務之間並沒有一個界線。有操作系統經驗,再去做應用,你會對系統知根知底,碰到問題時都有解決思路。有了業務經驗,你再了解一下操作系統,很快就可以組成一個團隊自立門戶,至少做個CTO沒問題。
1.1 專業領域
它又可以分為下面2類。
1.1.1 學術研究
比如語音、圖像處理、人工智慧,這類工作需要你有比較強的理論知識,我傾向於認為這類人是「科學家」,他們鑽研多年,很多時候是在做學術研究。
在嵌入式領域,需要把他們的成果用某種演算法表達出來,針對某種晶元進行優化,這部分工作也許有專人來做。
1.1.2 工程實現
也有這樣一類人,他們懂得這些專業領域的概念,但是沒有深入鑽研。可以使用各類開源資料實現某個目標,做出產品。比如圖像處理,他懂得用opencv里幾百個復雜函數來實現頭像識別。有時候還可以根據具體晶元來優化這些函數。
「專業領域」不是我的菜,如果你要做這一塊,我想最好的入門方法是在學校學習研究生、博士課程。
1.2 業務領域
換句話說,就是應用程序,這又可以分為下面2類。
1.2.1 界面顯示
做產品當然需要好的界面,但是,不是說它不重要,是沒什麼發展後勁。
現在的熱門詞是Android APP和IOS APP開發。你不要被Android、IOS兩個詞騙了,它們跟以前的VC、VB是同一路貨色,只是、僅僅是一套GUI控制項的實現。
希望沒有冒犯到你,我有理由。
一個程序需要有GUI界面,但是程序的內在邏輯才是核心。Android、IOS的開發工具給我們簡化了GUI的開發,並提供了這些控制項的交互機制,封裝並提供了一些服務(比如網路傳輸)。但是程序內部的業務邏輯、對視頻圖像聲音的處理等等,這才是核心。另外別忘了伺服器那邊的後台程序:怎樣更安全地保存數據、保護客戶的隱私,怎樣處理成千上萬上百萬的並發訪問,等等,這也是核心。
但是,從Android、IOS APP入門入行,這很快!如果你是大四,急於找到一份工作,那麼花上1、2個月去學習Android或IOS,應該容易找到工作,畢竟APP的需求永遠是最大的,現在這兩門技術還算熱門。在2011、2012年左右,Android程序員的起薪挺高,然後開始下滑。Android APP的入門基本只要1個月,所以懂的人也越來越多。2013、2014年,IOS開發的工資明顯比Android高了,於是各類IOS培訓也火曝起來。中華大地向來不缺速成人才,估計再過一陣子IOS工程師也是白菜價了。
會Android、IOS只是基本要求,不信去51job搜搜Android或IOS,職位要求里肯定其他要求。
1.2.2 業務邏輯
舉個簡單例子,做一個打卡軟體,你需要考慮這些東西:
①正常流程是上班下班時都要打卡
②有人忘記了怎麼辦?作為異常記錄在案,推送給管理員
③請假時怎麼處理?
④加班怎麼處理?
對於更復雜的例子,視頻會議系統里,各個模塊怎麼對接,各類協議怎麼兼容,你不深入這個行業,你根本搞不清楚。
應用開發的職位永遠是最多的,入門門檻也低。基本上只要你會C語言,面試時表現比較得體,一般公司都會給你機會。因為:
①你進公司後,還需要重新培訓你:熟悉它們的業務邏輯。
②你要做的,基本也就是一個個模塊,框架都有人給你定好了,你去填代碼就可以了。
說點讓你高興的事:軟體公司里,做領導的基本都是寫應用程序的(當然還有做市場的)。寫應用程序的人,對外可以研究市場接待客戶,對內可以管理程序員完成開發,不讓他做領導讓誰做?
如果你的志向是寫應用程序,那麼我建議你先練好基本功:數據結構、演算法是必備,然後憑興趣選擇資料庫、網路編程等等進行深入鑽研。
最後,選擇你看好的、感興趣的行業深耕個10年吧。做應用開發的人選擇了某個行業,後面是很難換行業的,選行很重要!
1.3 操作系統領域
UCOS太簡單,VxWorks太貴太專業,Windows不玩嵌入式了,IOS不開源,所以對於操作系統領域我們也只能玩Linux了。
在嵌入式領域Linux一家獨大!
Android呢?Android跟QT一樣,都是一套GUI系統。只是Google的實力太強了,現在Android無處不在,所以很多時候Linux+Android成了標配。注意,在這里我們關心的是Android的整個系統、裡面的機制,而不是學習幾個API然後開發界面程序。操作系統領域所包含的內容,簡單地說,就是製作出一台裝好系統的專用「電腦」,可以分為:
①為產品規劃硬體:
按需求、性能、成本選擇主晶元,搭配周邊外設,交由硬體開發人員設計。
②給單板製作、安裝操作系統、編寫驅動
③定製維護、升級等系統方案
④還可能要配置、安裝Android等GUI系統:
⑤為應用開發人員配置開發環境
⑥從系統角度解決疑難問題
這個領域,通常被稱為「底層系統」或是「驅動開發」。
先解決2個常見誤區:
①這份工作是寫驅動程序嗎?
看看上面羅列的6點,應該說,它包含驅動開發,但遠遠不只有驅動開發。
②我們還需要寫驅動嗎?不是有原廠嗎?或者只需要改改就可以?
經常有人說,晶元原廠都做好驅動了,拿過來改改就可以了。如果,你的硬體跟原廠的公板完全一樣,原廠源碼毫無BUG,不想優化性能、削減成本,不想做一些有特色的產品,那這話是正確的。
但是在這個不創新就是找死的年代,可能嗎?!原因有二:
①即使只是修改代碼,能修改的前提是能理解;能理解的最好煅煉方法是從零寫出若干驅動程序。
②很多時候,需要你深度定製系統。
以前做聯發科手機只需要改改界面就可以出貨了,現在山寨廠一批批倒下。大家都使用原廠的方案而不加修改時,最後只能拼成本。
舉個例子,深圳有2家做交通攝像頭、監控攝像頭的廠家,他們曾經找我做過4個項目:
①改進廠家給的SD卡驅動性能,使用DMA。
②換了Flash型號後,系統經常出問題,需要修改驅動BUG。
③觸摸屏點擊不準,找原因,後來發現是旁路電容導致的。
④裁減成本,把4片DDR換為2片DDR,需要改bootloader對DDR的初始化。
這些項目都很急,搞不定就無法出貨,這時候找原廠?除非你是中興華為等大客戶,否則誰理你?
我在中興公司上班時,寫驅動的時間其實是很少的,大部分時間是調試:系統調優,上幫APP工程師、下幫硬體工程師查找問題。我們從廠家、網上得到的源碼,很多都是標準的,當然可以直接用。但是在你的產品上也許優化一下更好。比如我們可以把攝像頭驅動和DMA驅動揉合起來,讓攝像頭的數據直接通過DMA發到DSP去。我們可以在軟體和硬體之間起橋梁作用,對於實體產品,有可能是軟體出問題也可能是硬體出問題,一般是底層系統工程師比較容易找出問題。
當硬體、軟體應用出現問題,他們解決不了時,從底層軟體角度給他們出主意,給他們提供工具。再比如方案選擇:晶元性能能否達標、可用的BSP是否完善等等,這只能由負責整個方案的人來考慮,他必須懂底層。
在操作系統領域,對知識的要求很多:
①懂硬體知識才能看懂電路圖
②英文好會看晶元手冊
③有編寫、移植驅動程序的能力
④對操作系統本身有一定的理解,才能解決各類疑難問題
⑤理解Android內部機制
⑥懂匯編、C語言、C++、JAVA
它絕對是一個大坑,沒有興趣、沒有毅力的人慎選。
①這行的入門,絕對需要半年以上,即使全天學習也要半年。
②它的職位,絕對比APP的職位少
③並且你沒有1、2年經驗,招你到公司後一開始你做的還是APP。
優點就是:
①學好後,行業通殺,想換行就換行;想自己做產品就自己做產品。
②相比做應用程序的人,不會被經常變動的需求搞得天天加班。
③門檻高,當然薪水相對就高。
操作系統領域,我認為適合於這些人:
①硬體工程師想轉軟體工程師,從底層軟體入門會比較好
②單片機工程師,想升級一下。會Linux底層的人肯定會單片機,會單片機的人不一定會Linux。
③時間充足的學生:如果你正讀大二大三,那麼花上半年學習嵌入式Linux底層多有益處。
④想掌握整個系統的人,比如你正在公司里寫APP,但是想升為系統工程師,那麼底層不得不學。
⑤想自己創業做實體產品的工程師,你有錢的話什麼技術都不用學,但是如果沒錢又想做產品,那麼Linux底層不得不學。
⑥做Linux APP的人,沒錯,他們也要學習。
這部分人不需要深入,了解個大概就可以:bootloader是用來啟動內核,Linux的文件系統(第1個程序是什麼、做什麼、各目錄幹嘛用)、APP跟驅動程序的調用關系、工具鏈,有這些概念就可以了
本文中,就把操作系統默認為Linux,講講怎麼學習嵌入式Linux+Android系統。
1.4 嵌入式Linux+Android系統包含哪些內容
嵌入式Linux系統包含哪些東西?不要急,舉一個例子你就知道了。
①電腦一開機,那些界面是誰顯示的?
是BIOS,它做什麼?一些自檢,然後從硬碟上讀入windows,並啟動它。
類似的,這個BIOS對應於嵌入式Linux里的bootloader。這個bootloader要去Flash上讀入Linux內核,並啟動它。
②啟動windows的目的是什麼?
當然運行應用程序以便上網、聊天什麼的了。
這些上網程序、聊天程序在哪?
在C盤、D盤上。
所以,windows要先識別出C盤、D盤。在Linux下我們稱之為根文件系統。
③windows能識別出C盤、D盤,那麼肯定有讀寫硬碟的能力。
這個能力我們稱之為驅動程序。當然不僅僅是操作硬碟,還有網卡、USB等等其他硬體。嵌入式Linux能從Flash上讀出並執行應用程序,肯定也得有Flash的驅動程序啊,當然也不僅僅是Flash。
簡單地說,嵌入式LINUX系統里含有bootloader、內核、驅動程序、根文件系統、應用程序這5大塊。而應用程序,我們又可以分為:C/C++、Android。
所以,嵌入式Linux+Android系統包含以下6部分內容:
①bootloader
②Linux內核
③驅動程序
④使用C/C++編寫的應用程序
⑤Android系統本身
⑥Android應用程序
Android跟Linux的聯系實在太大了,它的應用是如此廣泛,學習了Linux之後沒有理由停下來不學習Android。在大多數智能設備中,運行的是Linux操作系統;它上面要麼安裝有Android,要麼可以跟Android手機互聯。現在,Linux+Android已成標配。
2. 怎麼學習嵌入式Linux操作系統
本文假設您是零基礎,以實用為主,用最快的時間讓你入門;後面也會附上想深入學習時可以參考的資料。
在實際工作中,我們從事的是「操作系統」周邊的開發,並不會太深入學習、修改操作系統本身。
①操作系統具有進程管理、存儲管理、文件管理和設備管理等功能,這些核心功能非常穩定可靠,基本上不需要我們修改代碼。我們只需要針對自己的硬體完善驅動程序
②學習驅動時必定會涉及其他知識,比如存儲管理、進程調度。當你深入理解了驅動程序後,也會加深對操作系統其他部分的理解
③Linux內核中大部分代碼都是設備驅動程序,可以認為Linux內核由各類驅動構成
但是,要成為該領域的高手,一定要深入理解Linux操作系統本身,要去研讀它的源代碼。
在忙完工作,閑暇之餘,可以看看這些書:
①趙炯的《linux內核完全注釋》,這本比較薄,推薦這本。他後來又出了《Linux 內核完全剖析》,太厚了,搞不好看了後面就忘記前面了。
②毛德操、胡希明的《LINUX核心源代碼情景分析》,此書分上下冊,巨厚無比。當作字典看即可:想深入理解某方面的知識,就去看某章節。
③其他好書還有很多,我沒怎麼看,沒有更多建議
基於快速入門,上手工作的目的,您先不用看上面的書,先按本文學習。
2.1 入門路線圖
假設您是零基礎,我們規劃了如下入門路線圖。前面的知識,是後面知識的基礎,建議按順序學習。每一部分,不一定需要學得很深入透徹,下面分章節描述。
2.2 學習驅動程序之前的基礎知識
2.2.1 C語言
只要是理工科專業的,似乎都會教C語言。我見過很多C語言考試90、100分的,一上機就傻了,我懷疑他們都沒在電腦上寫過程序。
理論再好,沒有實踐不能幹活的話,公司招你去幹嘛?
反過來,實踐出真知,學習C語言,必須練練練、寫寫寫!
當你掌握基本語法後,就可以在電腦上練習一些C語言習題了;
當你寫過幾個C程序後,就可以進入下一階段的裸機開發了。
①不需要太深入
作為快速入門,只要你會編寫「Hello, world!」,會寫冒泡排序,會一些基礎的語法操作,暫時就夠了。
指針操作是重點,多練習;
不需要去學習過多的數據結構知識,只需要掌握鏈表操作,其他不用學習,比如:隊列、二叉樹等等都不用學;不需要去學習任何的函數使用,比如文件操作、多線程編程、網路編程等等;這些知識,在編寫Linux應用程序時會用,但是在操作系統特別是驅動學習時,用不著!
永往直前吧,以後碰到不懂的C語言問題,我們再回過頭來學習。
在後續的「裸機開發」中,會讓你繼續練習C語言,那會更實戰化。
C語言是在寫代碼中精進的。
②可以在Visual Studio下學習,也可以在Linux下學習,後者需要掌握一些編譯命令,我們暫時沒有提供C語言的教程,找一本C語言書,網上找找免費的C語言視頻(主要看怎麼搭建環境),就可以自學了。
2.2.2 PC Linux基本操作:
對於PC Linux,我們推薦使用Ubuntu,在它上面安裝軟體非常簡便。
我們的工作模式通常是這樣:在Windows下閱讀、編寫代碼,然後把代碼上傳到PC Linux去編譯。實際上,Ubuntu的桌面系統已經很好用了,我們拿到各種智能機可以很快上手,相信Ubuntu的桌面系統也可以讓你很快上手。為了提高工作效率,我們通常使用命令行來操作Ubuntu。
不用擔心,你前期只需要掌握這幾條命令就可以了,它們是如此簡單,我乾脆列出它們:
①cd : Change Directory(改變目錄)
cd 目錄名 // 進入某個目錄cd .. // cd 「兩個點」:返回上一級目錄cd - // cd 「短橫」:返回上一次所在目錄
②pwd : Print Work Directory(列印當前目錄 顯示出當前工作目錄的絕對路徑)
③mkdir : Make Directory(創建目錄)
mkdir abc // 創建文件夾abcmkdir -p a/b/c // 創建文件夾a,再a下創建文件夾b,再在b下創建文件夾c
④rm : Remove(刪除目錄或文件)
rm file // 刪除名為file的文件rm -rf dir // 刪除名為dir的目錄
⑤ls : List(列出目錄內容)
⑥mount : 掛載
mount -t nfs -o nolock,vers=2 192.168.1.123:/work/nfs_root /mntmount -t yaffs /dev/mtdblock3 /mnt
⑦chown : Change owner(改變文件的屬主,即擁有者)
chown book:book /work -R //對/work目錄及其下所有內容,屬主改為book用戶,組改為book
⑧chmod : Change mode(改變許可權),下面的例子很簡單粗暴
chmod 777 /work -R // 對/work目錄及其下所有內容,許可權改為可讀、可寫、可執行
⑨vi : Linux下最常用的編輯命令,使用稍微復雜,請自己搜索用法。
要練習這些命令,你可以進入Ubuntu桌面系統後,打開終端輸入那些命令;或是用SecureCRT、putty等工具遠程登錄Ubuntu後練習。
2.2.3 硬體知識
我們學習硬體知識的目的在於能看懂原理圖,看懂通信協議,看懂晶元手冊;不求能設計原理圖,更不求能設計電路板。
對於正統的方法,你應該這樣學習:
①學習《微機原理》,理解一個計算機的組成及各個部件的交互原理。
②學習《數字電路》,理解各種門電路的原理及使用,還可以掌握一些邏輯運算(與、或等)。
③《模擬電路》?好吧,這個不用學,至少我在工作中基本用不到它,現在全忘光了。
就我個人經驗來說,這些課程是有用的,但是:
①原理有用,實戰性不強。
比如《微機原理》是基於x86系統,跟ARM板子有很大差別,當然原理相通。
我是在接觸嵌入式編程後,才理解了這些課程。
②每本書都那麼厚,內容都很多,學習時間過長,自學有難度。
針對這些校園教材的不足,並結合實際開發過程中要用到的知識點,我們推出了《學前班_怎麼看原理圖》的系列視頻:
學前班第1課第1節___怎麼看原理圖之GPIO和門電路.wmv
學前班第1課第2.1節_怎麼看原理圖之協議類介面之UART.wmv
學前班第1課第2.2節_怎麼看原理圖之協議類介面之I2C.wmv
學前班第1課第2.3節_怎麼看原理圖之協議類介面之SPI.wmv
學前班第1課第2.4節_怎麼看原理圖之協議類介面之NAND Flash.wmv
學前班第1課第2.5節_怎麼看原理圖之協議類介面之LCD.wmv
學前班第1課第3節___怎麼看原理圖之內存類介面.wmv
學前班第1課第4.1節_怎麼看原理圖之分析S3C2410開發板.wmv
學前班第1課第4.2節_怎麼看原理圖之分析S3C2440開發板.wmv
學前班第1課第4.3節_怎麼看原理圖之分析S3C6410開發板.wmv
即使你只具備初中物理課的電路知識,我也希望能通過這些視頻,讓你可以看懂原理圖,理解一些常見的通信協議;如果你想掌握更多的硬體知識,這些視頻也可以起個索引作用,讓你知道缺乏什麼知識。
這些視頻所講到的硬體知識,將在《裸板開發》系列視頻中用到,到時可以相互對照著看,加深理解。
2.2.4 要不要專門學習Windows下的單片機開發
很多學校都開通了單片機的課程,很多人都是從51單片機、AVR單片機,現在比較新的STM32單片機開始接觸嵌入式領域,並且使用Windows下的開發軟體,比如keil、MDK等。
問題來了,要不要專門學習Windows下的單片機開發?
①如果這是你們專業的必修課,那就學吧
②如果你的專業跟單片機密切相關,比如機械控制等,那就學吧
③如果你只是想從單片機入門,然後學習更廣闊的嵌入式Linux,那麼放棄在Windows下學習單片機吧!
理由如下:
①Windows下的單片機學習,深度不夠
Windows下有很好的圖形界面單片機開發軟體,比如keil、MDK等。
它們封裝了很多技術細節,比如:
你只會從main函數開始編寫代碼,卻不知道上電後第1條代碼是怎麼執行的;
你可以編寫中斷處理函數,但是卻不知道它是怎麼被調用的;
你不知道程序怎麼從Flash上被讀入內存;
也不知道內存是怎麼劃分使用的,不知道棧在哪、堆在哪;
當你想裁剪程序降低對Flash、內存的使用時,你無從下手;
當你新建一個文件時,它被自動加入到工程里,但是其中的機理你完全不懂;
等等等。
②基於ARM+Linux裸機學習,可以學得更深,並且更貼合後續的Linux學習。實際上它就是Linux下的單片機學習,只是一切更加原始:所有的代碼需要你自己來編寫;哪些文件加入工程,需要你自己來管理。
在工作中,我們當然傾向於使用Windows下更便利的工具,但是在學習階段,我們更想學習到程序的本質。
一切從零編寫代碼、管理代碼,可以讓我們學習到更多知識:
你需要了解晶元的上電啟動過程,知道第1條代碼如何運行;
你需要掌握怎麼把程序從Flash上讀入內存;
需要理解內存怎麼規劃使用,比如棧在哪,堆在哪;
需要理解代碼重定位;
需要知道中斷發生後,軟硬體怎麼保護現場、跳到中斷入口、調用中斷程序、恢復現場;
你會知道,main函數不是我們編寫的第1個函數;
你會知道,晶元從上電開始,程序是怎麼被搬運執行的;
你會知道,函數調用過程中,參數是如何傳遞的;
你會知道,中斷發生時,每一個寄存器的值都要小心對待;
等等等。
你掌握了ARM+Linux的裸機開發,再回去看Windows下的單片機開發,會驚呼:怎麼那麼簡單!並且你會完全明白這些工具沒有向你展示的技術細節。
驅動程序=Linux驅動程序軟體框架+ARM開發板硬體操作,我們可以從簡單的裸機開發入手,先掌握硬體操作,並且還可以:
①掌握如何在PC Linux下編譯程序、把程序燒錄到板子上並運行它
②為學習bootloader打基礎:掌握了各種硬體操作後,後面一組合就是一個bootloader
2.2.5 為什麼選擇ARM9 S3C2440開發板,而不是其他性能更好的?
有一個錯誤的概念:S3C2440過時了、ARM9過時了。
這是不對的,如果你是軟體工程師,無論是ARM9、ARM11、A8還是A9,對我們來說是沒有差別的。
一款晶元,上面有CPU,還有眾多的片上設備(比如UART、USB、LCD控制器)。我們寫程序時,並不涉及CPU,只是去操作那些片上設備。
所以:差別在於片上設備,不在於CPU核;差別在於寄存器操作不一樣。
因為我們寫驅動並不涉及CPU的核心,只是操作CPU之外的設備,只是讀寫這些設備的寄存器。
之所以推薦S3C2440,是因為它的Linux學習資料最豐富,並有配套的第1、2期視頻。
2.2.6 怎麼學習ARM+Linux的裸機開發
學習裸機開發的目的有兩個:
①掌握裸機程序的結構,為後續的u-boot作準備
②練習硬體知識,即:怎麼看原理圖、晶元手冊,怎麼寫代碼來操作硬體
後面的u-boot可以認為是裸機程序的集合,我們在裸機開發中逐個掌握各個部件,再集合起來就可以得到一個u-boot了。
後續的驅動開發,也涉及硬體操作,你可以在裸機開發中學習硬體知識。
注意:如果你並不關心裸機的程序結構,不關心bootloader的實現,這部分是可以先略過的。在後面的驅動視頻中,我們也會重新講解所涉及的硬體知識。
推薦兩本書:杜春蕾的《ARM體系結構與編程》,韋東山的《嵌入式Linux應用開發完全手冊》。後者也許是國內第1本涉及在PC Linux環境下開發的ARM裸機程序的書,如果我說錯了,請原諒我書讀得少。
對於裸機開發,我們提供有2部分視頻:
①環境搭建
第0課第1節_剛接觸開發板之介面接線.wmv
第0課第2節_剛接觸開發板之燒寫裸板程序.wmv
第0課第3節_剛接觸開發板之重燒整個系統.wmv
第0課第4節_剛接觸開發板之使用vmwae和預先做好的ubuntu.wmv
第0課第5節_剛接觸開發板之u-boot打補丁編譯使用及建sourceinsight工程.wmv
第0課第6節_剛接觸開發板之內核u-boot打補丁編譯使用及建sourceinsight工程.wmv
第0課第7節_剛接觸開發板之製作根文件系統及初試驅動.wmv
第0課第8節_在TQ2440,MINI2440上搭建視頻所用系統.wmv
第0課第9節_win7下不能使用dnw燒寫的替代方法.wmv
.................未完
原文鏈接:網頁鏈接
『叄』 如何寫linux的I2C驅動,更具體的是加密晶元at88sc0104c的驅動
直接在應用空間寫吧,驅動的話要復雜點,會給你增加難度的。
在應用空間用/dev/i2cdev 來訪問i2c 設備的例子,你直接 吧。
加密晶元的話,一般廠家都有支持代碼的吧,不過不一定是linux 平台的,你把訪問i2c 的那部分改改就成了。
『肆』 介紹一款加密IC ,用於單片機與PC的加密通信
AES直接用單片機做不行嗎?又不復雜。
或者用同類的PC1加密更好,51用12M晶振,幾毫秒就做好了。
你要是不急,我找一下,應該有看到過aes的單片機程序的,我記得不復雜。
『伍』 有一個加密晶元SOP-8封裝,2腳接GND 8腳接VDD,誰家有貨
8條腿(pin)、8位、8k flash...不少人聽到這些參數可能會嗤之以鼻,當MCU的CoreMark跑分已經動輒2000多分,像這種「簡陋」的單片機已經處在了鄙視鏈的底端。
但是真的是這樣的嗎?「鄙視鏈」往往是鍵盤俠外行充內行的表現,聰明的人則會在選型時候選擇成本、功耗和性能最平衡的器件;每個大神都是處女座,多一絲一毫的資源浪費,都會覺得渾身不舒服。
還記得小MU嗎?僅使用STM32F103就可以提供基本的視覺感測功能,可以實現球、線、人、臉、移動物體檢測,為Arino,樹莓派,PC端,手機端等開發平台提供視覺處理能力。檢測結果通過UART,SPI,USB以報文的形式輸出,同時提供了4路標准舵機控制介面,可以直接應用於舵機雲台。
有點扯遠了...小MU很好地說明了一個問題——不是性能最強的才是最好的,硬體過剩同樣是一種浪費行為。每一個工程師都應該是處女座,精雕細琢才是真美。或許STM8就是真正適合你的那顆芯!
早在2011年,在21ic的STMCU的論壇就已經有人期待過8-PIN的STM8,而今年,8條腿的STM8已經觸手可及啦~ST已經發布了最新的8-PIN STM8S,某寶即可直接購買。
8-PIN著實讓人腦洞大開,不得不讓人天馬行空地構思充滿8-PIN STM8的世界,原來玲瓏精巧的它有這么多的功用!說到百花齊放我就想到文體兩開花,今年時尚價廉的STM8上市了……
回歸正題,此次8-PIN STM8以超低廉的價格和獨特的八腳讓STM8又熱了一把,之前也提及過不是性能最強的才是最好的,硬體過剩同樣是一種浪費行為,其實不僅如此,8-PIN的STM8對於設計更加嚴苛的情境下也是至關重要的,網友也為我們分享了這種經驗:
據了解,之前器件選型,一般只考慮價格和資源,直到之前一次改版,產品上的一個前端模塊是純模擬器件,要再進一步縮小體積,於是乎只能上單片機了。找來找去,換了國產的增強型51,但實際只用了4個腳,一個外部中斷+三個輸出腳,內部用到兩個定時器,就全部搞定了,國產的雖然也有個別的SOP8,但是資源性能遠不如STM8優勢明顯啊。
因此對於很多體積要求很高的情況,可以說是最好的選擇。如溫度和電壓監控模塊上,其內置了12位的AD,對於這些應用完全夠了,SPI和I2C可以用來掛載溫度節點和oled顯示屏。
他也表示之前從來沒用過STM8系列,了解了一下該芯
『陸』 I2C 晶元24C02 可否加密,任何加密;如果能加密,那麼加密後還能解密嗎
24C02 不可加密
『柒』 北京寶興達公司推出新品多介面加密晶元。產品支持SPI,I2C,USB接品的加密晶元,方便客戶應用,
謝謝樓主,現在與工程師聯繫上了,正在找這種介面的加密晶元呢,滿足我們不同用戶機器的需求,產品的功能強大,且性價比高,目前你們是國內第一家有這種晶元的公司,很專業,值得信賴!