‘壹’ 编译环境有哪些
问题一:java的编译环境是什么 JDK(Java Development Kit,Java开发包,Java开发工具)是一个写Java的applet和应用程序的程序开发环境。它由一个处于操作系统层之上的运行环境还有开发者编译,调试和运行用Java语言写的applet和应用程序所需的工具组成。
JDK(Java Development Kit)是Sun Microsystems针对Java开发员的产品。自从Java推出以来,JDK已经成为使用最广泛的Java SDK(Software development kit)。
JDK包含的基本组件包括:
・javac C 编译器,将源程序转成字节码
・jar C 打包工具,将相关的类文件打包成一个文件
・javadoc C 文档生成器,从源码注释中提取文档
・jdb C debugger,查粗贺渣错工具
JDK中还包括完整的JRE(Java Runtime Environment,Java运行环境)拍唯,也被称为private runtime。包括了用于产品环境的各种库类,以及给开发员使用的补充库,如国际化的库、IDL库。
JDK中还包括各种例子程序,用以展示Java API中的各部分。
从初学者角度来看,采用JDK开发Java程序能够很快理解程序中各部分代码之间的关系,有利于理解Java面向对象的设计思想。JDK的另一个显着特点是随着Java (J2EE、J2SE以及J2ME)版本绩升级而升级。但它的缺点也是非常明显的就是从事大规模企业级Java应用开发非常困难,不能进行复杂的Java软件开发,也不利于团体协同开发。
JDK一般有三种版本:
SE(J2SE),standard edition,标准版,是我们通常用的一个版本
EE(J2EE),enterpsise edtion,企业版,使用这种JDK开发J2EE应用程序,
ME(J2ME),micro edtion,主要用于移动设备、嵌入式设备上的java应用程序
问题二:C语言的编译环境用哪个? 哪个不要脸的说TC 丢人
反而是有些垃圾用功能较强的编译工具
用TC,学会自己写函数 记住不要用中文的
那些说TC丢人的就是用的中文,英语都不懂还弄个毛编程
朋饥,我建议你坚持用TC2.0, 对新手最有帮助的!
问题三:c程序语言中的编译系统是什么?编岩悄译环境又什么什么? C语言代码是.C的文本文件。
需要用编译程序把.C文件翻译.OBJ,然后用连接程序再弄成.EXE文件。
编译程序就是那个把.C变成.OBJ的程序
编译环境就是把编译程序、连接程序以及其他一些方便程序员写程序的东西综合在
一起形成的一套系统,程序编译环境...
希望对你有帮助
问题四:C++编译软件和环境有哪些? 用DEV C++吧,我一直用这个
问题五:Renesas MCU的编译环境有哪些? 你可以登录官网查询
问题六:C++的编译器都有哪些啊?谢谢!!!! 编译器很多的:
Visual C++
GNU C++
Inter C++
Sun C++
clang
。。。。。
等等。
一般都用VC和GNU C++,其他的都是专业人士使用的。。。。
楼上的回答是复制互。。。。太NC
关于IDE,C++有很多,一些其他语言的IDE现在也支持C++了
给你介绍一些:
Visual Studio系列(目前最新版本是VS2013)
Dev C++(目前最新非官方版是Dev c++ 5.4.1)
Code Block
NetBeans
C-Free(貌似不好用)
。。。
问题七:编译程序与集成开发环境有什么不同?举例说ming 以下选自网络:
集成开发环境(IDE,Integrated Development Environment )是用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面工具。集成了代码编写功能、分析功能、编译功能、调试功能等一体化的开发软件服务套。
换句话说,编译器只是集成开发环境的一部分。
比如最常见的集成开发环境:Visual Studio(其使用的编译器是cl(貌似今年会集成clang编译器))。
除cl外,比较常见的编译器还有gcc。
问题八:C++的开发环境有哪些?哪个C++的开发环境要好一些呢? c++builder 2010 最好用了。
初学者,最好不要去学VC鸡c++并身就难学了,还要来一个VC。
还是用c++builder,入门简单,上手容易,
但你C++用熟了,再去整VC事斗功倍,不听老人言,吃亏在眼前。
问题九:什么是集成开发环境? development SDK
就是写代码,编译,链接做在一个场件中的东东
比如VB.NET ,turbo C
你知道,从前编写程序不是这样的,通常需要你在记事本中把代码写好存盘,然后以这个文件为参数,运行编译程序,链接程序,最后才能生成可执行的机器代码
‘贰’ 请问什么编译器能够编译PIC单片机的18F系列
你用的是PICC16吧,PICC18是可以编译PIC18系列的MCU的,
我用的是PIC18F458的
或者你用MC18的编译器也可以
‘叁’ keil uvision4和keil for ARM是什么区别啊
keil uvision4和keil for ARM区别为:主次不同、用户不同、用途不同。
一、主次不同
1、keil uvision4:2019年7月为止使用Keil uVision4的产品有Keil MDK-ARM,Keil C51,Keil C166和Keil C251。
2、keil for ARM:MDK-arm是Keil公司开发的keil uvision4系列微控制器中的一种。
二、用户不同
1、keil uvision4:针对所有开发人员,提供一个整洁,高效的环境来开发应用程序。使用户能够使用多台监视器。
2、keil for ARM:为基于Cortex-M、Cortex-R4、ARM7、ARM9处理器设备提供了一个完整的开发环境。
三、用途不同
1、keil uvision4:旨在提高开发人员的生产力,实现更快,更有效的程序开发。
2、keil for ARM:专为微控制器应用而设计,不仅易学易用,而且功能强大,能够满足大多数苛刻的嵌入式应用。
参考资料来源:
网络——keil uvision4
网络——MDK-arm
‘肆’ MCU简介及详细资料
单片机出现的历史并不长,但发展十分迅猛。 它的产生与发展和微处理器的产生与发展大体同步,自1971年美国Intel公司首先推出4位微处理器以来,它的发展到目前为止大致可分为5个阶段。下面以Intel公司的单片机发展为代表加以介绍。
1971-1976
单片机发展的初级阶段。 1971年11月Intel公司首先设计出集成度为2000只电晶体/片的4位微处理器Intel 4004, 并配有RAM、 ROM和移位暂存器, 构成了第一台MCS-4微处理器, 而后又推出了8位微处理器Intel 8008, 以及其它各公司相继推出的8位微处理器。
1976-1980
低性能单片机阶段。 以1976年Intel公司推出的MCS-48系列为代表, 采用将8位CPU、 8位并行I/O接口、8位定时/计数器、RAM和ROM等集成于一块半导体晶片上的单片结构, 虽然其寻址范围有限(不大于4 KB), 也没有串行I/O, RAM、 ROM容量小, 中断系统也较简单, 但功能可满足一般工业控制和智慧型化仪器、仪表等的需要。
1980-1983
高性能单片机阶段。 这一阶段推出的高性能8位单片机普遍带有串行口, 有多级中断处理系统, 多个16位定时器/计数器。片内RAM、 ROM的容量加大,且寻址范围可达64 KB,个别片内还带有A/D转换接口。
1983-80年代末
16位单片机阶段。 1983年Intel公司又推出了高性能的16位单片机MCS-96系列, 由于其采用了最新的制造工艺, 使晶片集成度高达12万只电晶体/片。
1990年代
单片机在集成度、功能、速度、可靠性、套用领域等全方位向更高水平发展。
按照单片机的特点,单片机的套用分为单机套用与多机套用。在一个套用系统中,只使用一片单片机称为单机套用。单片机的单机套用的范围包括:
(1) 测控系统。 用单片机可以构成各种不太复杂的工业控制系统、自适应控制系统、数据采集系统等, 达到测量与控制的目的。
(2) 智慧型仪表。 用单片机改造原有的测量、誉宽控制仪表, 促进仪表向数位化、智慧型化、多功能化、综合化、柔性化方向发展。
(3) 机电一体化产品。单片机与传统的机械产品相结合, 使传统机械产品结构简化, 控制智慧型化。
(4) 智慧型接口。 在计算机控制系统, 特别是在较大型的工业测、控系统中, 用单片机进行接口的控制与管理, 加之单片机与主机的并行工作, 大大提高了系统的运行速度。
(5) 智慧型民用产品。 如在家用电器、玩具、游戏机、声像设备、电子秤、收银机、办公设备、厨房设备等许多产品中, 单片机控制器的引入, 不仅使产品的功能大大增强, 性能得到提高, 而且获得了良好的使用效果。
单片机的多机套用系统可分为功能集散系统、并行多机处理及局部网路系统。
(1) 功能集散系统。 多功能集散系统是为了满足工程系统多种外围功能的要求而设定的多机系统。
(2) 并行多机控制系统。 并行多机控制系统主要解决工程套用系统的快速性问题, 以便构成大型实时工程套用系统。
(3) 局部网路系统。
单片机按套用范围又可分成通用型和专用型。专用型是针对某种特定产品而设计的,例如用于体温计的单片机、用于洗衣机的单片机等等。在通用型的单片庆喊亮机中,又可按字长分为4位、8位、16/32位,虽然计算机的微处理器现在几乎是32/64位的天下,8位、16位的微处理器已趋于萎缩,但单片机情况却不同,8位单片机成本低,价格廉,便于开发,其性能能满足大部分的需要,只有在航天、汽车、机器人等高技术领域,需要高速处理大量数据时,才需要选用16/32位,而在一般工业领域,8位通用型单片机,仍然是目前套用最广的单片机。
到目前为止,中国的单片机套用和嵌入式系统开发走过了二十余年的历程,随着嵌入式系统逐渐深入社会生活各个方面,单片机课程的教学也有从传统的8位处理器平台向32位高级RISC处理器平台转变的趋势,但8位机依然难以被取代。国民经济建设、军事及家用电器等各个领域,尤其是手机、汽车自动导航设备、PDA、智慧型玩具、智慧型家电、医疗设备等行业都是国内急需单片机人才的行业。行业高端目前有超过10余万名从事单片机开发套用的工程师,但面对嵌入式系统工业化的潮流和我国大力推动建设"嵌入式软体工厂"的机遇,我国的嵌入式产品要溶入国际市场,形成产业,则必将急需大批单片机套用型人才,这为高职类学生从事这类高技术行业提供了巨大机会。
按用途分类:
通用型:将可开发的资源(ROM、RAM、I/O、 EPROM)等全部提供给用户。
专用型:其硬体及指令是按照某种特定用途而设计,例如录音机机芯控制器、印表机控制器、电机控制器等。
按其基本操作处理的数据位数分类:
根据汇流排或数据暂存器的宽度,单片机又分为1位、4位、8位、16位、32位甚至64位单片机。4位MCU大部份套用在计算器、车用仪表、车用防盗装置、呼叫器、无线电话、CD播放器、LCD驱动控制器、LCD游戏机、儿童玩具、磅秤、充电器、胎压计、温湿度计、遥控器及傻瓜相机等;8位MCU大部份套用在电表、马达控制器、电动玩具机、变频式冷气机、呼叫器、传真机、来电辨识器(CallerID)、电话录音机、CRT显示器、键盘及USB等;8位、16位单片机主要用于一般的控制领域,一般不使用作业系统, 16位MCU大部份套用在行动电话、数字相机及摄录放影机等;32位MCU大部份套用在Modem、GPS、PDA、HPC、STB、Hub、Bridge、Router、工作站、ISDN电话、雷射印表机与彩色传真机; 32位用于网路操作、多媒体处理等复杂处理的场合,一般要使用嵌入式作业系统。64位MCU大部份套用在高阶工作站、多媒体互动系统、高级电视游乐器(如SEGA的Dreamcast及Nintendo的GameBoy)及高级终端机等。
8位MCU工作频率在16~50MHz之间,强调简单效能、低成本套用,在目前MCU市场总值仍有一定地位,而不少MCU业者也持续为8bit MCU开发频率调节的节能设计,以因应绿色时代的产品开发需求。
16位MCU,则以16位运算、16/24位寻址能力及频率在24~100MHz为主流规格,部分16bit MCU额外提供32位加/减/乘/除的特殊指令。由于32bit MCU出现并持续降价及8bit MCU简单耐用又便宜的低价优势下,夹在中间的16bit MCU市场不断被挤压,成为出货比例中最低的产品。
32位MCU可说是MCU市场主流,单颗报价在1.5~4美元之间,工作频率大多在100~350MHz之间,执行效能更佳,套用类型也相当多元。但32位MCU会因为运算元与记忆体长度的增加,相同功能的程式代码长度较8/16bit MCU增加30~40%,这导致内嵌OTP/FlashROM记忆体容量不能太小,而晶片对外脚位数量暴增,进一步局限32bit MCU的成本缩减能力。
内嵌程式存储器类型
下面以51单片机为例(MCS-51系列MCU是我国使用最多的单片机),根据其内部存储器的类型不同可以分为以下几个基本型:
1.无ROM型 :8031
2.ROM型:8051
3.EPROM型:8751
4.EEPROM 型:8951
5.增强型:8032/8052/8752/8952/C8051F
MCU按其存储器类型可分为无片内ROM型和带片内ROM型两种。对于无片内ROM型的晶片,必须外接EPROM才能套用(典型晶片为8031)。带片内ROM型的晶片又分为片内EPROM型(典型晶片为87C51)、MASK片内掩模ROM型(典型晶片为8051)、片内FLASH型(典型晶片为89C51)等类型,一些公司还推出带有片内一次性可程式ROM(One Time Programming, OTP)的晶片(典型晶片为97C51)。MASKROM的MCU价格便宜,但程式在出厂时已经固化,适合程式固定不变的套用场合;FLASH ROM的MCU程式可以反复擦写,灵活性很强,但价格较高,适合对价格不敏感的套用场合或做开发用途;OTPROM的MCU价格介于前两者之间,同时又拥有一次性可程式能力,适合既要求一定灵活性,又要求低成本的套用场合,尤其是功能不断翻新、需要迅速量产的电子产品。
由于MCU强调是最大密集度与最小晶片面积,以有限的程式代码达成控制功能,因此当今MCU多半使用内建的MaskROM、OTP ROM、EEPROM或Flash记忆体来储存韧体码,MCU内建Flash记忆体容量从低阶4~64KB到最高阶512KB~2MB不等。
存储器结构
MCU根据其存储器结构可分为哈佛(Harvard)结构和冯▪诺依曼(Von Neumann)结构。现在的单片机绝大多数都是基于冯·诺伊曼结构的,这种结构清楚地定义了嵌入式系统所必需的四个基本部分:一个中央处理器核心,程式存储器(唯读存储器或者快闪记忆体)、数据存储器(随机存储器)、一个或者更多的定时/计时器,还有用来与外围设备以及扩展资源进行通信的输入/输出连线端口,所有这些都被集成在单个积体电路晶片上。
指令结构
MCU根据指令结构又可分为CISC(Complex Instruction Set Computer,复杂指令集计算机)和RISC(Reced Instruction Set Comuter,精简指令集计算机微控制器)
MCU同温度感测器之间通过I2C汇流排连线。I2C汇流排占用2条MCU输入输出口线,二者之间的通信完全依靠软体完成。温度感测器的地址可以通过2根地址引脚设定,这使得一根I2C汇流排上可以同时连线8个这样的感测器。本方案中,感测器的7位地址已经设定为1001000。MCU需要访问感测器时,先要发出一个8位的暂存器指针,然后再发出感测器的地址(7位地址,低位是WR信号)。感测器中有3个暂存器可供MCU使用,8位暂存器指针就是用来确定MCU究竟要使用哪个暂存器的。本方案中,主程式会不断更新感测器的配置暂存器,这会使感测器工作于单步模式,每更新一次就会测量一次温度。
要读取感测器测量值暂存器的内容,MCU必须首先传送感测器地址和暂存器指针。MCU发出一个启动信号,接着发出感测器地址,然后将RD/WR管脚设为高电平,就可以读取测量值暂存器。
为了读出感测器测量值暂存器中的16位数据,MCU必须与感测器进行两次8位数据通信。当感测器上电工作时,默认的测量精度为9位,分辨力为0.5 C/LSB(量程为-128.5 C至128.5 C)。本方案采用默认测量精度,根据需要,可以重新设定感测器,将测量精度提高到12位。如果只要求作一般的温度指示,比如自动调温器,那么分辨力达到1 C就可以满足要求了。这种情况下,感测器的低8位数据可以忽略,只用高8位数据就可以达到分辨力1 C的设计要求。由于读取暂存器时是按先高8位后低8位的顺序,所以低8位数据既可以读,也可以不读。唯读取高8位数据的好处有二,第一是可以缩短MCU和感测器的工作时间,降低功耗;第二是不影响分辨力指标。
MCU读取感测器的测量值后,接下来就要进行换算并将结果显示在LCD上。整个处理过程包括:判断显示结果的正负号,进行二进制码到BCD码的转换,将数据传到LCD的相关暂存器中。
数据处理完毕并显示结果之后,MCU会向感测器发出一个单步指令。单步指令会让感测器启动一次温度测试,然后自动进入等待模式,直到模数转换完毕。MCU发出单步指令后,就进入LPM3模式,这时MCU系统时钟继续工作,产生定时中断唤醒CPU。定时的长短可以通过编程调整,以便适应具体套用的需要。
在20世纪最值得人们称道的成就中,就有积体电路和电子计算机的发展。20世纪70年代出现的微型计算机,在科学技术界引起了影响深远的变革。在70年代中期,微型计算机家族中又分裂出一个小小的派系--单片机。随着4位单片机出现之后,又推出了8位的单片机。MCS48系列,特别是MCS51系列单片机的出现,确立了单片机作为微控制器(MCU)的地位,引起了微型计算机领域新的变革。在当今世界上,微处理器(MPU)和微控制器(MCU)形成了各具特色的两个分支。它们互相区别,但又互相融合、互相促进。与微处理器(MPU)以运算性能和速度为特征的飞速发展不同,微控制器(MCU)则是以其控制功能的不断完善为发展标志的。
CPU(Central Processing Unit,中央处理器)发展出来三个分枝,一个是DSP(Digital Signal Processing/Processor,数位讯号处理),另外两个是MCU(Micro Control Unit,微控制器单元)和MPU(Micro Processor Unit,微处理器单元)。
MCU集成了片上外围器件;MPU不带外围器件(例如存储器阵列),是高度集成的通用结构的处理器,是去除了集成外设的MCU;DSP运算能力强,擅长很多的重复数据运算,而MCU则适合不同信息源的多种数据的处理诊断和运算,侧重于控制,速度并不如DSP。MCU区别于DSP的最大特点在于它的通用性,反应在指令集和寻址模式中。DSP与MCU的结合是DSC,它终将取代这两种晶片。
1.对密集的乘法运算的支持
GPP不是设计来做密集乘法任务的,即使是一些现代的GPP,也要求多个指令周期来做一次乘法。而DSP处理器使用专门的硬体来实现单周期乘 法。DSP处理器还增加了累加器暂存器来处理多个乘积的和。累加器暂存器通常比其他暂存器宽,增加称为结果bits的额外bits来避免溢出。同时,为了 充分体现专门的乘法-累加硬体的好处,几乎所有的DSP的指令集都包含有显式的MAC指令。
2. 存储器结构
传统上,GPP使用冯.诺依曼存储器结构。这种结构中,只有一个存储器空间通过一组汇流排(一个地址汇流排和一个数据汇流排)连线到处理器核。通常,做一次乘法会发生4次存储器访问,用掉至少四个指令周期。
大多数DSP采用了哈佛结构,将存储器空间划分成两个,分别存储程式和数据。它们有两组汇流排连线到处理器核,允许同时对它们进行访问。这种安排将处理器存储器的频宽加倍,更重要的是同时为处理器核提供数据与指令。在这种布局下,DSP得以实现单周期的MAC指令。
典型的高性能GPP实际上已包含两个片内高速快取,一个是数据,一个是指令,它们直接连线到处理器核,以加快运行时的访问速度。从物理上说,这种片内的双存储器和汇流排的结构几乎与哈佛结构的一样了。然而从逻辑上说,两者还是有重要的区别。
GPP使用控制逻辑来决定哪些数据和指令字存储在片内的高速快取里,其程式设计师并不加以指定(也可能根本不知道)。与此相反,DSP使用多个片内 存储器和多组汇流排来保证每个指令周期记忆体储器的多次访问。在使用DSP时,程式设计师要明确地控制哪些数据和指令要存储在片记忆体储器中。程式设计师在写程式时,必 须保证处理器能够有效地使用其双汇流排。
此外,DSP处理器几乎都不具备数据高速快取。这是因为DSP的典型数据是数据流。也就是说,DSP处理器对每个数据样本做计算后,就丢弃了,几乎不再重复使用。
3.零开销循环
如果了解到DSP算法的一个共同的特点,即大多数的处理时间是花在执行较小的循环上,也就容易理解,为什么大多数的DSP都有专门的硬体,用于 零开销循环。所谓零开销循环是指处理器在执行循环时,不用花时间去检查循环计数器的值、条件转移到循环的顶部、将循环计数器减1。
与此相反,GPP的循环使用软体来实现。某些高性能的GPP使用转移预报硬体,几乎达到与硬体支持的零开销循环同样的效果。
4.定点计算
大多数DSP使用定点计算,而不是使用浮点。虽然DSP的套用必须十分注意数字的精确,用浮点来做应该容易的多,但是对DSP来说,廉价也是非 常重要的。定点机器比起相应的浮点机器来要便宜(而且更快)。为了不使用浮点机器而又保证数字的准确,DSP处理器在指令集和硬体方面都支持饱和计算、舍 入和移位。
5.专门的寻址方式
DSP处理器往往都支持专门的寻址模式,它们对通常的信号处理操作和算法是很有用的。例如,模组(循环)寻址(对实现数字滤波器延时线很有用)、位倒序寻址(对FFT很有用)。这些非常专门的寻址模式在GPP中是不常使用的,只有用软体来实现。
6.执行时间的预测
大多数的DSP套用(如蜂窝电话和数据机)都是严格的实时套用,所有的处理必须在指定的时间内完成。这就要求程式设计师准确地确定每个样本需要多少处理时间,或者,至少要知道,在最坏的情况下,需要多少时间。如果打算用低成本的GPP去完成实时信号处理的任务,执行时间的预测大概不会成为什么问题,应为低成本GPP具有相对直接的结构,比较容易预测执行时间。然而,大多数实时DSP套用所要求的处理能力是低成本GPP所不能提供的。 这时候,DSP对高性能GPP的优势在于,即便是使用了高速快取的DSP,哪些指令会放进去也是由程式设计师(而不是处理器)来决定的,因此很容易判断指令是从高速快取还是从存储器中读取。DSP一般不使用动态特性,如转移预测和推理执行等。因此,由一段给定的代码来预测所要求的执行时间是完全直截了当的。从而使程式设计师得以确定晶片的性能限制。
7.定点DSP指令集
定点DSP指令集是按两个目标来设计的:使处理器能够在每个指令周期内完成多个操作,从而提高每个指令周期的计算效率。将存贮DSP程式的存储器空间减到最小(由于存储器对整个系统的成本影响甚大,该问题在对成本敏感的DSP套用中尤为重要)。为了实现这些目标,DSP处理器的指令集通常都允许程式设计师在一个指令内说明若干个并行的操作。例如,在一条指令包含了MAC操作,即同时的一个或两个数据移动。在典型的例子里,一条指令就包含了计算FIR滤波器的一节所需要的所有操作。这种高效率付出的代价是,其指令集既不直观,也不容易使用(与GPP的指令集相比)。 GPP的程式通常并不在意处理器的指令集是否容易使用,因为他们一般使用象C或C++等高级语言。而对于DSP的程式设计师来说,不幸的是主要的DSP应用程式都是用汇编语言写的(至少部分是汇编语言最佳化的)。这里有两个理由:首先,大多数广泛使用的高级语言,例如C,并不适合于描述典型的DSP算法。其次, DSP结构的复杂性,如多存储器空间、多汇流排、不规则的指令集、高度专门化的硬体等,使得难于为其编写高效率的编译器。 即便用编译器将C原始码编译成为DSP的汇编代码,最佳化的任务仍然很重。典型的DSP套用都具有大量计算的要求,并有严格的开销限制,使得程式的最佳化必不可少(至少是对程式的最关键部分)。因此,考虑选用DSP的一个关键因素是,是否存在足够的能够较好地适应DSP处理器指令集的程式设计师。
8.开发工具的要求
因为DSP套用要求高度最佳化的代码,大多数DSP厂商都提供一些开发工具,以帮助程式设计师完成其最佳化工作。例如,大多数厂商都提供处理器的仿真工具,以准确地仿真每个指令周期内处理器的活动。无论对于确保实时操作还是代码的最佳化,这些都是很有用的工具。 GPP厂商通常并不提供这样的工具,主要是因为GPP程式设计师通常并不需要详细到这一层的信息。GPP缺乏精确到指令周期的仿真工具,是DSP套用开发者所面临的的大问题:由于几乎不可能预测高性能GPP对于给定任务所需要的周期数,从而无法说明如何去改善代码的性能。
MCU技术创新与嵌入式套用大会是伴随着高交会电子展一起开展的一个有关MCU技术的交流套用论坛。由深圳市创意时代会展有限公司承办,内容上安排通常是上午由国内专业人士对mcu知识和创新套用进行演讲,下午论坛,自由畅谈交流技术及行业趋势等。
第四届
时间: 2012年8月21日
地点: 深圳会展中心
相关展会: 2012年嵌入式系统展
大会全称: 第四届MCU技术创新与嵌入式套用大会
支持媒体: 电子展览网
主题演讲(上午):
从MCU到SoC
MCU技术的融合、开放与创新
将嵌入式系统无缝升级32位MCU
更绿色可靠的嵌入式设计,等
分论坛(下午)深入更多嵌入式套用市场:
分论坛1: 家用电器/智慧型家居
分论坛2: 人机界面/IPC
分论坛3: 电机控制
第三届
将重点呈现:嵌入式世界创新关键 及 中国企业产品升级转型所需MCU与嵌入式方案。
时间:2011年11月18日
地点:深圳
主办单位:第十三届深圳高交会电子展组委会
承办单位:创意时代会展 电子展览网
主题演讲(上午)内容包括:
多核MCU发展趋势
MCU到SoC
智慧型系统的安全性与可靠性等
MCU!MCU!2011触角深入最新套用市场(下午):
分论坛1: 家用电器/智慧型家居
分论坛2: 智慧型计量
分论坛3: 人机界面/IPC
分论坛4: 电机控制
以往回顾
2009年有460多为专业人士出席
2010年有606位专业人士出席
2010年专业听众分析
MCU!MCU!2010吸引了来自IBM、西门子、研祥、艾默生、TCL、创维、康佳、美的、中兴、联想、富士康、伟创力、比亚迪等上百家国内外知名企业606位技术及管理人员到会参与:
专业听众中研发技术人员超过了一半
技术研发人员占到52%,其次是中、高层管理人员占33%;少部分为市场/行销人员,占13%,其他占2%
专业听众从事的领域分布 参会人员所在的企业,消费电子占37%;工业电子占24%;嵌入式系统设计占22%;医疗电子占19%;汽车电子,嵌入式软体开发,各占15%;家电14%;手机与通讯11%;IT与网路10%;其他占9%。
2010年专业听众从事的领域分布 2010年mcu专业听众分析
‘伍’ 适合win10系统的c语言编译器
桌面操作系统
对于当前主流桌面操作系统而言,可使用 VisualC++、GCC以及 LLVM Clang 这三大编译器。
Visual C++(简称 MSVC)只能用于 Windows 操作系统;GCC 和 LLVM Clang除了可用于Windows操作系统之外,主要用于 Unix/linux操作系统。
像现在很多版本的 Linux 都默认使用 GCC 作为C语言编译器,而像 FreeBSD、macOS 等系统默认使用 LLVM Clang 编译器。由于当前 LLVM 项目主要在 Apple 的主推下发展的,所以在 macOS中,Clang 编译器又被称为 Apple LLVM 编译器。
MSVC 编译器主要用于 Windows 操作系统平台下的应用程序开发,它不开源。用户可以使用 Visual Studio Community 版本来免费使用它,但是如果要把通过 Visual Studio Community 工具生成出来的应用进行商用,那么就得好好阅读一下微软的许可证和说明书了。
而使用 GCC 与 Clang 编译器构建出来的应用一般没有任何限制,程序员可以将应用程序随意发布和进行商用。
MSVC 编译器对 C99 标准的支持就十分有限,加之它压根不支持任何 C11 标准,所以本教程中设计 C11 的代码例子不会针对 MSVC 进行描述。所幸的是,Visual Studio Community 2017 加入了对 Clang 编译器的支持,官方称之为——Clang with Microsoft CodeGen,当前版本基于的是 Clang 3.8。
也就是说,应用于 Visual Studio 集成开发环境中的 Clang 编译器前端可支持 Clang 编译器的所有语法特性,而后端生成的代码则与 MSVC 效果一样,包括像 long 整数类型在 64 位编译模式下长度仍然为 4 个字节,所以各位使用的时候也需要注意。
为了方便描述,本教程后面涉及 Visual Studio 集成开发环境下的 Clang 编译器简称为 VS-Clang 编译器。
嵌入式系统
而在嵌入式系统方面,可用的C语言编译器就非常丰富了,比如:
用于 Keil 公司 51 系列单片机的 Keil C51 编译器;
当前大红大紫的 Arino 板搭载的开发套件,可用针对 AVR 微控制器的 AVRGCC 编译器;
ARM 自己出的 ADS(ARM Development Suite)、RVDS(RealView Development Suite)和当前最新的 DS-5 Studio;
DSP 设计商 TI(Texas Instruments)的 CCS(Code Composer Studio);
DSP 设计商 ADI(Analog Devices,Inc.)的 Visual DSP++ 编译器,等等。
‘陆’ 常用的c语言编程软件有哪些
windows下首选VS,版本至少vs2005以上,或者用最新的VSCode,不过需要自己配插件,好处是免费,如果做单片机c开发首选eclipse,linux下如果做单片机首选eclipse,其次是clion。eclipse兼容性最好,不过稳定性差一些,vs在win下没有对手,clion用cmake,相比来说大部分c程序用的都是makefile,需要适应一下。
Devc++:这个IDE是windows环境下的,操作简单,功能也不弱,适合新手使用。
Codeblocks(强力推荐):功能比较强大的c/c++IDE,有着不错的智能提示。
C语言是一门通用计算机编程语言,广泛应用于底层开发。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。
二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局为C语言制定了一套完整的美国国家标准语法,称为ANSIC,作为C语言最初的标准。目前2011年12月8日,国际标准化组织(ISO)和国际电工委员会(IEC)发布的C11标准是C语言的第三个官方标准,也是C语言的最新标准,该标准更好的支持了汉字函数名和汉字标识符,一定程度上实现了汉字编程。
C语言是一门面向过程的计算机编程语言,与C++,Java等面向对象的编程语言有所不同。
其编译器主要有Clang、GCC、WIN-TC、SUBLIME、MSVC、TurboC等。
编译器
GCC,GNU组织开发的开源免费的编译器
MinGW,Windows操作系统下的GCC
Clang,开源的BSD协议的基于LLVM的编译器
VisualC++::cl.exe,MicrosoftVC++自带的编译器
集成开发环境
CodeBlocks,开源免费的C/C++IDE
CodeLite,开源、跨平台的C/C++集成开发环境
OrwellDev-C++,可移植的C/C++IDE
C-Free
LightTable
VisualStudio系列
HelloWorld
‘柒’ keil uvision4 keil uvision3 区别 哪个比较好 win7用keil uvision3可以么
版本越高肯定越好用。比如DEBUG,在watch视窗要增加观察项时,4 只要用鼠标直接双击就可以(按F2也可以),3只能按F2
前者功能更强大,除了配猛51系列,还支援ARM的编写与编译、模拟。
先建个工程,选择好晶片型号,写程式,编译,除错,
接口有些不一样,其它的差不多。基本一样销橘。
改字型,别用前面有@的字型
个人认为最好是下载一个KEIL MDK中国版,提取其中的帮助文件(中文的)::embedinfo./down-class.asp?lx=big&anid=51
这个帮助文件是英蓓特翻译的,还是能看的
说明没有安装keil的编译器。。。。怀疑你安装版本的问题,建议你安装uv2,然后再执行uv3就可以了。。
KeilSofare公司推出的uVision3是一款可用于多种8051MCU的整合开发环境(IDE),该IDE同时也是PK51及其它开发套件的一个重要元件。除增加了原始码、功能导航器、模板编辑以及改进的搜寻功能外,uVision3还提供了一个配置向导功能,加速了启动程式码和配置档案的生成。此外其内建的模拟器可模拟目标MCU,包括指令集、片上外围装置及外部讯号等。uVision3提供逻辑分析器,可监控基于MCUI/O引脚和外设状态变化下的程式变数。
uVision3提供对多种最新的8051类微处理器的支援,包括AnalogDevices的ADuC83x和ADuC84x,以及Infineon的XC866等。
他俩都差不多的,初学者用来没什么区别!
还有就是你最好不要亏卖团用汇编编写程式,最好用C语言写,容易!
不过你如果是初学者的话,学汇编用来了解微控制器的工作原理有很大帮助!
我建议你最好要能看懂程式,但写程式用C语言,因为你汇编写的再好,以后不会使用了!
祝你进步!
应该可以的,在keil uv4里建立工程后,右键点树形选单里的Target--Options for target *** 开启设定页,选debug页 ,点选 use,在use 右边的下拉窗中,如果能看到proteus vdm 就应该可以的。需要找一个dll档案:Vdm51.dll,才能在keil中新增除错装置(老版本的proteus安装资料夹下能找到这个档案,新版得可以上网下一个)。
以下内容为引用
“新增在程式目录keil/c51/bin目录 下新增Vdm51.dll,(注意:与其他版本不同,6.9以上版本Proteus 6 ProfessionalMODELS目录下没 有 VDM51.dll)并且修改keil目录下tools配置档案,新增两行文字:TDRV8=BINVDM51.DLL ("Proteus VSM Simulator") BOOK2=HLPVDMAGDI.HLP ("Proteus VSM AGDI Driver"),经过实际 操作证明,不一定要安装补丁Vdmagdi.exe,手动操作也可成功实现联调功能,其中第二行非必需”
‘捌’ avr的开发工具
AVR StudioATMEL的AVR单片机的集成环境汇编级开发调试软件,完全免费。ATMEL AVR Studio集成开发环境(IDE),包括了AVR Assembler编译器、AVR Studio调试功能、AVR Prog串行、并行下载功能和JTAG ICE仿真等功能。
SL ISP 双龙公司开发的ISP下载软件。之前的版本都比较普通,最新版本1.423引入了STK500的熔丝位界面,让操作比较简易,并且不容易出错。是国产的老牌下载器。
PnoyProg 经典的ISP下载软件。但这个版本有一个缺陷:该软件读出的时钟校正值只有1MHZ的校正,其他频率的校正值无法读出。这是一个很好用的免费软件。一年多没有更新了,2005.05更新了一个新版本,支持了 tiny2313,mega8515,mega8535,但奇怪的是,仍不支持 M48/88/168.
VMLAB Vmlab是AVR系列单片机的一个纯软件模拟仿真工具。从V3.12开始,它变成了免费的版本。Vmlab还能仿真ST62系列的单片机
GCCAVR(WinAVR) GCC是Linux的唯一开发语言。就嵌入系统应用来说,几乎所有市面上有一定市场份额的8bit以上MCU都有爱好者移植GCC在其上。
GCC的编译器优化程度可以说是目前世界上民用软件中做的最好的,完全用ANSI?C规范写出的超过一万行代码的程序,还没有任何一种编译器产生的目标代码能比GCC产生的代码速度更快,同时它的bug数量却也可以算作所有民用C编译器中最少的
就8bit开发而言,GCC还有一个很严重的缺陷就是燃雹,不支持float数据类型,实际上GCC在所有环境中都把float直接定义为double,这样,对8bit环境来说,就显得负担过重了。
被移植到WINDOWS平台上,整合了各个组件后的Windows版GCCAVR就是WinAVR。不是IDE,自己定制IDE的时候就要用到makefile,makefile重要作用就是:指定所用的单片机类型,指定编译的文件,设定编译优化条件等。
ICC ICC是用来给AVR单片机编写C语言程序的,比较专业,但需要付费。
IARAVR IAR是公认全世界最好的嵌入式开发软件,IARAVR集成了高效的C编译器,是目前开发代码效率最高的开发工具,也是AVR开发前陵工具当中唯一皮悔帆支持64bit数据的的开发工具,其代码优化效率也是最高的,软件售价比较昂贵,国内使用的人较少。
‘玖’ 51单片机用什么软件编程
开源软件mcu8051ide 功能不是一般的强,用c语言编程,界面不输给商业软件,而且提供多种模拟器件如:led 数码管,矩阵数码管(8×8)按键,矩阵按键,甚至温度传感器。开源的没有任何限制,完全免费,自动生成多种烧录文件(我们一般就用.HEX的)感觉keil c弱爆了。
安装方法,下载sdcc(mcu8051ide是基于sdcc的)和mcu 8051 ide都安装好就可以啦,头文件在sdcc的安装文件夹内(include)有些关键字要加两个连在一起的下划线比如 __interrup, __code.
头文件与keil的不通用,比如定义P0口
在keil下是: sfr P0=0x80; 在sdcc下是: __sfr __at P0 0x80; 这个P0^1的不行,但sdcc里面有很多头文件8051.h 80c51.h 80c52.h等等 基本满足要求,给stc单片机编程不用改,加一点特殊的就可以。这样优秀的开源软件不用真的是白不用啊。
‘拾’ 单片机编程用汇编好还是C语言好
单片机编程,C语言编程但很好。
大致分成三类:机器语言、汇编语言、高级语言。机器语言由于繁琐容易出错,大部分用户已经不再便用。
1.单片机汇编语言
汇编语言是一种符号语言,它使用文字助记符来表示机器指令。它是最接近机器代码的语言。它的主要优点是占用资源少,程序执行效率高。由于每条指令对应于一个机器码,所以每一步的执行都非常清楚。
并且程序的大小和栈调用都易于控制,调试也更加方便。但是不同类型的单片机,其汇编语言可能会有一点不同,所以移植起来并不容易,因为它们的指令系统是不同的。但掌握汇编语言可以帮助我们理解影响四川语学习效率的特殊规律。
例如,了解汇编语言指令可以让您使用芯片内ram作为变量,因为芯片外变量需要多个指令来设置访问的累加器和数据指针。
类似地,只有汇编编程经验才能防止在需要浮点数和启用函数时创建大型、低效的程序,这在没有汇编语言的情况下是无法做到的。
2.单片机的C语言
MCUC语言是一种经过编译的程序设计语言,它兼顾了多种高级语言的特点,具有汇编语言的功能。C语言具有丰富的库函数,计算速度快,编译效率高,可移植性好,并能实现对系统硬件的直接控制。
此外C语言程序具有完整的程序模块结构,为软件开发中的模块化编程方法提供了强有力的保证。与组装相比,具有以下优点:
MCU的指令系统不需要知道,只需要对51的内存结构有一个初步的了解,对于寄存器的分配,不同的内存寻址和数据类型等细节都由编译器来管理。程序有一个正式的结构,可以分为不同的功能。这使得程序可以结构化,结合变量选择和特殊操作,并提高程序的可读性。
大大减少了编程和调试时间,从而提高了效率。所提供的库包含许多具有强大数据处理能力的标准子例程,由于其方便的模块化编程技术,可以很容易地将这些子例程编程到新程序中。
功能强大灵活,库中包含了很多标准的子程序,具有较强的数据处理能力,可以方便地编程植入新的程序,因为它具有方便的模块化编程技术。
MCUC语言作为一种非常方便的语言而得到了广泛的支持,(语言程序本身不依赖于机器硬件系统,基本上不根据单片机的修改就可以将U的不同之处快速移植过来。)
利用单片机c语言进行编程,已经成为单片机软件开发的主流,作为一门综合性的技术和参与开发的大型软件系统,单片机开发人员最好能够掌握基本的c语言编程。
(10)mcu编译器有哪些扩展阅读:
SCM语言
MCU支持三种高级语言,即PL/M、C和BASIC。C语言是一种通用的编程语言,其码率高,数据类型和运算符丰富,并具有良好的程序结构,适用于各种应用程序的设计,是一种广泛应用的单片机编程语言。
单片机的C语言采用C51编译器(简称C51)。C51生成的目标代码短小、快速、存储空间小,符合C语言的ANSI标准,生成的代码遵循Intel目标文件格式,可与A51汇编语言或PL/M51语言目标代码混合使用