电子发烧友网 > 控制/MCU > 正文

单片机C语言编程基础

2008年03月06日 14:52 次阅读

单片机的外部结构:

1、 DIP40双列直插;
2、 P0,P1,P2,P3四个8位准双向I/O引脚;(作为I/O输入时,要先输出高电平)
3、 电源VCC(PIN40)和地线GND(PIN20);
4、 高电平复位RESET(PIN9);(10uF电容接VCC与RESET,即可实现上电复位)
5、 内置振荡电路,外部只要接晶体至X1(PIN18)和X0(PIN19);(频率为主频的12倍)
6、 程序配置EA(PIN31)接高电平VCC;(运行单片机内部ROM中的程序)
7、 P3支持第二功能:RXD、TXD、INT0、INT1、T0、T1
  单片机内部I/O部件:(所为学习单片机,实际上就是编程控制以下I/O部件,完成指定任务)
1、 四个8位通用I/O端口,对应引脚P0、P1、P2和P3;
2、 两个16位定时计数器;(TMOD,TCON,TL0,TH0,TL1,TH1)
3、 一个串行通信接口;(SCON,SBUF)
4、 一个中断控制器;(IE,IP)

  针对AT89C52单片机,头文件AT89x52.h给出了SFR特殊功能寄存器所有端口的定义。教科书的160页给出了针对MCS51系列单片机的C语言扩展变量类型。

单片机C语言编程基础

1、 十六进制表示字节0x5a:二进制为01011010B;0x6E为01101110。
2、 如果将一个16位二进数赋给一个8位的字节变量,则自动截断为低8位,而丢掉高8位。
3、 ++var表示对变量var先增一;var—表示对变量后减一。
4、 x |= 0x0f;表示为 x = x | 0x0f;
5、 TMOD = ( TMOD & 0xf0 ) | 0x05;表示给变量TMOD的低四位赋值0x5,而不改变TMOD的高四位。
6、 While( 1 ); 表示无限执行该语句,即死循环。语句后的分号表示空循环体,也就是{;}

  在某引脚输出高电平的编程方法:(比如P1.3(PIN4)引脚)

#include //该头文档中有单片机内部资源的符号化定义,其中包含P1.3
void main( void ) //void 表示没有输入参数,也没有函数返值,这入单片机运行的复位入口
{
P1_3 = 1; //给P1_3赋值1,引脚P1.3就能输出高电平VCC
While( 1 ); //死循环,相当 LOOP: goto LOOP;
}

  注意:P0的每个引脚要输出高电平时,必须外接上拉电阻(如4K7)至VCC电源。

  在某引脚输出低电平的编程方法:(比如P2.7引脚)

#include //该头文档中有单片机内部资源的符号化定义,其中包含P2.7
void main( void ) //void 表示没有输入参数,也没有函数返值,这入单片机运行的复位入口
{
P2_7 = 0; //给P2_7赋值0,引脚P2.7就能输出低电平GND
While( 1 ); //死循环,相当 LOOP: goto LOOP;
}

  在某引脚输出方波编程方法:(比如P3.1引脚)

#include //该头文档中有单片机内部资源的符号化定义,其中包含P3.1
void main( void ) //void 表示没有输入参数,也没有函数返值,这入单片机运行的复位入口
{
While( 1 ) //非零表示真,如果为真则执行下面循环体的语句
{
P3_1 = 1; //给P3_1赋值1,引脚P3.1就能输出高电平VCC
P3_1 = 0; //给P3_1赋值0,引脚P3.1就能输出低电平GND
} //由于一直为真,所以不断输出高、低、高、低……,从而形成方波
}

  将某引脚的输入电平取反后,从另一个引脚输出:( 比如 P0.4 = NOT( P1.1) )

#include //该头文档中有单片机内部资源的符号化定义,其中包含P0.4和P1.1
void main( void ) //void 表示没有输入参数,也没有函数返值,这入单片机运行的复位入口
{
P1_1 = 1; //初始化。P1.1作为输入,必须输出高电平
While( 1 ) //非零表示真,如果为真则执行下面循环体的语句
{
if( P1_1 == 1 ) //读取P1.1,就是认为P1.1为输入,如果P1.1输入高电平VCC
{ P0_4 = 0; } //给P0_4赋值0,引脚P0.4就能输出低电平GND
else //否则P1.1输入为低电平GND
//{ P0_4 = 0; } //给P0_4赋值0,引脚P0.4就能输出低电平GND
{ P0_4 = 1; } //给P0_4赋值1,引脚P0.4就能输出高电平VCC
} //由于一直为真,所以不断根据P1.1的输入情况,改变P0.4的输出电平
}

  将某端口8个引脚输入电平,低四位取反后,从另一个端口8个引脚输出:( 比如 P2 = NOT( P3 ) )

#include //该头文档中有单片机内部资源的符号化定义,其中包含P2和P3
void main( void ) //void 表示没有输入参数,也没有函数返值,这入单片机运行的复位入口
{
P3 = 0xff; //初始化。P3作为输入,必须输出高电平,同时给P3口的8个引脚输出高电平
While( 1 ) //非零表示真,如果为真则执行下面循环体的语句
{ //取反的方法是异或1,而不取反的方法则是异或0
P2 = P3^0x0f //读取P3,就是认为P3为输入,低四位异或者1,即取反,然后输出
} //由于一直为真,所以不断将P3取反输出到P2
}

  注意:一个字节的8位D7、D6至D0,分别输出到P3.7、P3.6至P3.0,比如P3=0x0f,则P3.7、P3.6、P3.5、P3.4四个引脚都输出低电平,而P3.3、P3.2、P3.1、P3.0四个引脚都输出高电平。同样,输入一个端口P2,即是将P2.7、P2.6至P2.0,读入到一个字节的8位D7、D6至D0。
1、 接电源:VCC(PIN40)、GND(PIN20)。加接退耦电容0.1uF
2、 接晶体:X1(PIN18)、X2(PIN19)。注意标出晶体频率(选用12MHz),还有辅助电容30pF
3、 接复位:RES(PIN9)。接上电复位电路,以及手动复位电路,分析复位工作原理
4、 接配置:EA(PIN31)。说明原因。

  发光二极的控控制:单片机I/O输出

  将一发光二极管LED的正极(阳极)接P1.1,LED的负极(阴极)接地GND。只要P1.1输出高电平VCC,LED就正向导通(导通时LED上的压降大于1V),有电流流过LED,至发LED发亮。实际上由于P1.1高电平输出电阻为10K,起到输出限流的作用,所以流过LED的电流小于(5V-1V)/10K = 0.4mA。只要P1.1输出低电平GND,实际小于0.3V,LED就不能导通,结果LED不亮。

  开关双键的输入:输入先输出高

  一个按键KEY_ON接在P1.6与GND之间,另一个按键KEY_OFF接P1.7与GND之间,按KEY_ON后LED亮,按KEY_OFF后LED灭。同时按下LED半亮,LED保持后松开键的状态,即ON亮OFF灭。

#include
#define LED P1^1 //用符号LED代替P1_1
#define KEY_ON P1^6 //用符号KEY_ON代替P1_6
#define KEY_OFF P1^7 //用符号KEY_OFF代替P1_7
void main( void ) //单片机复位后的执行入口,void表示空,无输入参数,无返回值
{
KEY_ON = 1; //作为输入,首先输出高,接下KEY_ON,P1.6则接地为0,否则输入为1
KEY_OFF = 1; //作为输入,首先输出高,接下KEY_OFF,P1.7则接地为0,否则输入为1
While( 1 ) //永远为真,所以永远循环执行如下括号内所有语句
{
if( KEY_ON==0 ) LED=1; //是KEY_ON接下,所示P1.1输出高,LED亮
if( KEY_OFF==0 ) LED=0; //是KEY_OFF接下,所示P1.1输出低,LED灭
} //松开键后,都不给LED赋值,所以LED保持最后按键状态。
//同时按下时,LED不断亮灭,各占一半时间,交替频率很快,由于人眼惯性,看上去为半亮态
}

  数码管的接法和驱动原理及单片机编程

  一支七段数码管实际由8个发光二极管构成,其中7个组形构成数字8的七段笔画,所以称为七段数码管,而余下的1个发光二极管作为小数点。作为习惯,分别给8个发光二极管标上记号:a,b,c,d,e,f,g,h。对应8的顶上一画,按顺时针方向排,中间一画为g,小数点为h。

  我们通常又将各二极与一个字节的8位对应,a(D0),b(D1),c(D2),d(D3),e(D4),f(D5),g(D6),h(D7),相应8个发光二极管正好与单片机一个端口Pn的8个引脚连接,这样单片机就可以通过引脚输出高低电平控制8个发光二极的亮与灭,从而显示各种数字和符号;对应字节,引脚接法为:a(Pn.0),b(Pn.1),c(Pn.2),d(Pn.3),e(Pn.4),f(Pn.5),g(Pn.6),h(Pn.7)。
如果将8个发光二极管的负极(阴极)内接在一起,作为数码管的一个引脚,这种数码管则被称为共阴数码管,共同的引脚则称为共阴极,8个正极则为段极。否则,如果是将正极(阳极)内接在一起引出的,则称为共阳数码管,共同的引脚则称为共阳极,8个负极则为段极。

  以单支共阴数码管为例,可将段极接到某端口Pn,共阴极接GND,则可编写出对应十六进制码的七段码表字节数据如右图:

  16键码显示的单片机程序

  我们在P1端口接一支共阴数码管SLED,在P2、P3端口接16个按键,分别编号为KEY_0、KEY_1到KEY_F,操作时只能按一个键,按键后SLED显示对应键编号。

#include
#define SLED P1
#define KEY_0 P2^0
#define KEY_1 P2^1
#define KEY_2 P2^2
#define KEY_3 P2^3
#define KEY_4 P2^4
#define KEY_5 P2^5
#define KEY_6 P2^6
#define KEY_7 P2^7
#define KEY_8 P3^0
#define KEY_9 P3^1
#define KEY_A P3^2
#define KEY_B P3^3
#define KEY_C P3^4
#define KEY_D P3^5
#define KEY_E P3^6
#define KEY_F P3^7


Code unsigned char Seg7Code[16]= //用十六进数作为数组下标,可直接取得对应的七段编码字节
// 0 1 2 3 4 5 6 7 8 9 A b C d E F
{0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f, 0x77, 0x7c, 0x39, 0x5e, 0x79, 0x71};
void main( void )
{
unsigned char i=0; //作为数组下标
P2 = 0xff; //P2作为输入,初始化输出高
P3 = 0xff; //P3作为输入,初始化输出高
While( 1 )
{
if( KEY_0 == 0 ) i=0; if( KEY_1 == 0 ) i=1;
if( KEY_2 == 0 ) i=2; if( KEY_3 == 0 ) i=3;
if( KEY_4 == 0 ) i=4; if( KEY_5 == 0 ) i=5;
if( KEY_6 == 0 ) i=6; if( KEY_7 == 0 ) i=7;
if( KEY_8 == 0 ) i=8; if( KEY_9 == 0 ) i=9;
if( KEY_A == 0 ) i=0xA; if( KEY_B == 0 ) i=0xB;
if( KEY_C == 0 ) i=0xC; if( KEY_D == 0 ) i=0xD;
if( KEY_E == 0 ) i=0xE; if( KEY_F == 0 ) i=0xF;
SLED = Seg7Code[ i ]; //开始时显示0,根据i取应七段编码
}
}

技术专区

关注电子发烧友微信

有趣有料的资讯及技术干货

下载发烧友APP

打造属于您的人脉电子圈

关注发烧友课堂

锁定最新课程活动及技术直播
收藏 人收藏
分享:

评论

相关推荐

如何开始学习一款单片机,如何看开发板的电路图?

如果你现在还没有单片机开发板,那买一个什么单片机的开发板呢?由于现在ARM单片机占据了整个市场的大部...

发表于 2018-04-10 15:08 17次阅读
如何开始学习一款单片机,如何看开发板的电路图?

CAN总线成为车电系统的总线标准

在电子产品的各种通讯方式中,CAN(Controller Area Network)总线以其高可靠性...

发表于 2018-04-10 11:37 10次阅读
CAN总线成为车电系统的总线标准

学习开发环境和编程语言:汇编语言和C语言的比较

能够解决上述问题的编程语言就是C语言。C语言具有不依存于特定的CPU,又具有程序移植性高等的特点。另...

发表于 2018-04-10 09:01 55次阅读
学习开发环境和编程语言:汇编语言和C语言的比较

跳舞机器人的软件部分设计:主控单片机程序和从机程...

首先介绍一下软件的架构,小π机器人的软件部分主要包含手机APP程序、上位机程序、主控单片机程序和从机...

发表于 2018-04-09 14:17 65次阅读
跳舞机器人的软件部分设计:主控单片机程序和从机程...

EM78P173N义隆单片机MCU规格书

发表于 2018-04-09 11:51 97次阅读
EM78P173N义隆单片机MCU规格书

EM78P153B义隆单片机MCU中文规格书

发表于 2018-04-09 11:45 105次阅读
EM78P153B义隆单片机MCU中文规格书

单片机的编程器和烧录器有什么区别

本文开始介绍了单片机编程器的特点以及对单片机编程器作用及功能进行了解析,其次介绍了烧录器的概念以及它...

发表于 2018-04-09 10:36 114次阅读
单片机的编程器和烧录器有什么区别

基于微控制器STM32F105的双CAN冗余设计...

控制器局域网( Contro llerA reaN etwo rk, CAN)是一种多主方式的串行通...

发表于 2018-04-09 10:03 110次阅读
基于微控制器STM32F105的双CAN冗余设计...

两个数码管显示的数值可以作为单片机定时器的定时时间吗?

发表于 2018-04-08 21:08 120次阅读
两个数码管显示的数值可以作为单片机定时器的定时时间吗?

有偿求大佬做一个CAN总线传输的环境监测系统!

发表于 2018-04-08 17:17 89次阅读
有偿求大佬做一个CAN总线传输的环境监测系统!

半导体新唐单片机怎么样_新唐单片机是台湾的吗

新唐科技股份有限公司(Nuvoton Technology Corp.)是位在台湾的一家半导体公司,...

发表于 2018-04-08 16:37 200次阅读
半导体新唐单片机怎么样_新唐单片机是台湾的吗

基于单片机简易数字频率计的毕业设计

发表于 2018-04-08 16:28 105次阅读
基于单片机简易数字频率计的毕业设计

单片机芯片型号有哪些_常见单片机芯片型号大全

本文主要介绍了单片机芯片型号有哪些_常见单片机芯片型号大全。经典的单片机芯片型号:1、MCS-51系...

发表于 2018-04-08 15:13 344次阅读
单片机芯片型号有哪些_常见单片机芯片型号大全

基于AT89S52单片机控制的高精度数控直流电流...

本系统以AT89S52单片机为控制器,通过人机接口(按键和LCD显示屏)来设置输出电流,设置步进等级...

发表于 2018-04-08 11:55 175次阅读
基于AT89S52单片机控制的高精度数控直流电流...

【步进电机】如何实现滑块与轮子的同步运动的机械设计?

发表于 2018-04-08 11:09 158次阅读
【步进电机】如何实现滑块与轮子的同步运动的机械设计?

基于STC单片机的LED护栏管控制系统设计

LED 护栏管又名丽得管,是一种先进的LED装饰照明灯饰产品。以红、绿、蓝3种颜色的LED作为光源...

发表于 2018-04-08 10:42 62次阅读
基于STC单片机的LED护栏管控制系统设计

单片机控制的迫击炮防止重装弹装置

本系统以单片机作为核心控制电路,相对于一般电路构成的防重装弹装置,电路更简洁,调试更快捷,基于软件编...

发表于 2018-04-08 10:37 45次阅读
单片机控制的迫击炮防止重装弹装置

74ls02中文资料汇总(74ls02引脚图及功...

本文主要介绍了74ls02中文资料汇总(74ls02引脚图及功能_真值表及应用电路),74ls02是...

发表于 2018-04-08 10:32 52次阅读
74ls02中文资料汇总(74ls02引脚图及功...

基于单片机的秒,分,时设计实验

这个是用Proteus做的硬件设计,对单片机有兴趣大概都用过吧!另外还有软件程序,如果把这个硬件比作...

发表于 2018-04-08 10:23 44次阅读
基于单片机的秒,分,时设计实验

关于帆板控制系统的设计实现

采用MMA7361加速度角度传感器测量角度。加速度角度传感器是通过测量由于重力引起的加速度计算出器件...

发表于 2018-04-08 10:18 41次阅读
关于帆板控制系统的设计实现

MSP430G2001IPW14R

发表于 2018-04-08 10:09 72次阅读
MSP430G2001IPW14R

基于C52单片机的红外遥控优化电风扇(硬件电路+...

传统电风扇多采用机械方式进行控制,功能少,噪音大,各档的风速变化大。随着科技的发展和人们生活水平的提...

发表于 2018-04-08 10:05 47次阅读
基于C52单片机的红外遥控优化电风扇(硬件电路+...

基于Proteus单片机的音乐演奏实现系统

本文提出的一种基于 Proteus 的单片机演奏音乐的方法,非常简单实用,且该方法基于软件来实现的...

发表于 2018-04-08 09:27 70次阅读
基于Proteus单片机的音乐演奏实现系统

单片机学习的人必须掌握的基本内容

首先要放清51的定位,跟我一起再念一遍:51只是个工具51只是个工具51只是个工具。当然51还有一个...

发表于 2018-04-08 08:36 180次阅读
单片机学习的人必须掌握的基本内容

原理图转换成pdf,这是咋回事?

发表于 2018-04-07 21:01 56次阅读
原理图转换成pdf,这是咋回事?

单片机、ARM、MUC、DSP、FPGA、嵌入式...

首先,“嵌入式”这是个概念,准确的定义没有,各个书上都有各自的定义。

发表于 2018-04-07 12:38 658次阅读
单片机、ARM、MUC、DSP、FPGA、嵌入式...

FBPSPS的核心应用用法详解数据大全

;FOLD PTP VB=100% VE=100% ACC=100% RobWzg=2 Base=0

发表于 2018-04-07 12:24 446次阅读
FBPSPS的核心应用用法详解数据大全

工程师必须要懂得C语言 如果不懂C语言该感到危机

在大学院校的计算机科学体系中,持续缺乏对嵌入式系统编程关注的情况,可能会让分散的情况日趋严重。事实上...

发表于 2018-04-07 08:50 48次阅读
工程师必须要懂得C语言 如果不懂C语言该感到危机

资料分享-最新51单片机视频教程

发表于 2018-04-06 23:48 249次阅读
资料分享-最新51单片机视频教程

两个stc15F单片机之间能用基于CH340的USB通信协议通信吗?

发表于 2018-04-06 21:22 115次阅读
两个stc15F单片机之间能用基于CH340的USB通信协议通信吗?

如何优化C语言:选择合适的算法和数据结构

数组与指针语句具有十分密码的关系,一般来说,指针比较灵活简洁,而数组则比较直观,容易理解。对于大部分...

发表于 2018-04-06 19:52 418次阅读
如何优化C语言:选择合适的算法和数据结构

C语言及ARM中堆栈指针SP设置的理解与总结

开始将堆栈指针设置在内部RAM,是因为不是每个板上都有外部RAM,而且外部RAM的大小也不相同,而且...

发表于 2018-04-06 19:46 281次阅读
C语言及ARM中堆栈指针SP设置的理解与总结

AVR熔丝位操作时的要点和需要注意的相关事项。

对AVR熔丝位的配置是比较细致的工作,用户往往忽视其重要性,或感到不易掌握。

发表于 2018-04-06 13:35 600次阅读
AVR熔丝位操作时的要点和需要注意的相关事项。

基于C8051F410单片机的血糖仪设计方案

血糖测量通常采用电化学分析中的三电极体系。三电极体系是相对于传统的两电极体系而言,包括,工作电极(W...

发表于 2018-04-06 03:13 134次阅读
基于C8051F410单片机的血糖仪设计方案

对iPipeline的对plll库做出了对应的优...

项目CI系统引入了Jenkins2.0 iPipeline 框架(plll库)之后应该说提升了很多幸...

发表于 2018-04-05 18:23 340次阅读
对iPipeline的对plll库做出了对应的优...

单片机学习入门_学单片机需要什么基础

当今社会,应用单片机的产品已经渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的足迹。现在,...

发表于 2018-04-03 14:57 266次阅读
单片机学习入门_学单片机需要什么基础

编程入门先要学什么_需要哪些书籍

编程是编写程序的中文简称,就是让计算机代为解决某个问题,对某个计算体系规定一定的运算方式,是计算体系...

发表于 2018-04-03 11:47 187次阅读
编程入门先要学什么_需要哪些书籍

c语言运算符优先级规律

超详细!快进来复习一下C语言运算符优先级 每当想找哪个运算符优先级高时,很多时候总是想找的就没有,真...

发表于 2018-04-03 11:30 188次阅读
c语言运算符优先级规律

单片机有什么用_学单片机有前途吗

所谓单片机,就是把中央处理器CPU(Central Processing Unit)、存储器(Mem...

发表于 2018-04-03 10:58 420次阅读
单片机有什么用_学单片机有前途吗

嵌入式选择用C语言开发的原因

面向对象程序设计可以看作一种在程序中包含各种独立而又互相调用的对象的思想,这与传统的思想刚好相反:传...

发表于 2018-04-03 10:54 114次阅读
嵌入式选择用C语言开发的原因

单片机开发板哪个好_单片机开发板排行

单片机技术的发展以微处理器(MPU)技术及超大规模集成电路技术的发展为先导,以广泛的应用领域拉动,表...

发表于 2018-04-03 10:16 357次阅读
单片机开发板哪个好_单片机开发板排行

如果你喜欢编程想学习编程请看看下文给你的 7 个...

如果你喜欢编程,那么你真是受到了上天的眷顾。你是非常幸运的少数人之一,能够以自己喜欢的事谋生。

发表于 2018-04-03 10:04 202次阅读
如果你喜欢编程想学习编程请看看下文给你的 7 个...

单片机就业前景怎么样_学好单片机开发赚钱吗

对于学习单片机的人而言,肯定都想知道单片机目前的发展现状啊,据此来给自己指定学习目标吧。所以小编总结...

发表于 2018-04-03 09:46 175次阅读
单片机就业前景怎么样_学好单片机开发赚钱吗

一文看懂STC单片机冷启动和复位有什么区别

STC单片机是一款增强型51单片机,完全兼容MCS-51,还增加了新的功能,比如新增两级中断优先级,...

发表于 2018-04-03 09:13 223次阅读
一文看懂STC单片机冷启动和复位有什么区别

单片机STM32时钟图文理解

如输出到称为HCLK、FCLK的时钟,还直接输出到SDIO外设的SDIOCLK时钟、存储器控制器FS...

发表于 2018-04-03 08:45 226次阅读
单片机STM32时钟图文理解

NEC单片机的FIP显示控制/驱动器应用

日本NEC公司生产的μPD780208系列8位单片机属于78K/0家庭中功能较强的一种系列。根据内部...

发表于 2018-04-02 20:05 45次阅读
NEC单片机的FIP显示控制/驱动器应用

采用单片机的帆板角度控制系统的设计与实现

系统采用单片机(STC89C54RD)作为主要控制器件,采用HEDS9701槽型光耦加360线光栅片...

发表于 2018-04-02 19:39 37次阅读
采用单片机的帆板角度控制系统的设计与实现

依靠C语言,单片机平台可以制作二维码

以往我们所使用到的二维码大多依赖网络平台或者智能终端,今天我们来谈谈在单片机平台上的实现过程。

发表于 2018-04-02 17:44 247次阅读
依靠C语言,单片机平台可以制作二维码

单片机的介绍及广泛应用

电路简单、功能强大、质量可靠,这就是单片机被广泛是使用的根本原因。在我们的生活里,电器更新换代频繁、...

发表于 2018-04-02 17:37 88次阅读
单片机的介绍及广泛应用

人机界面简单编程实例介绍

本文开始介绍了人机界面的概念和人机界面的使用方法,其次阐述了人机界面的编程以及分析了编程的难点和技术...

发表于 2018-04-02 17:05 116次阅读
人机界面简单编程实例介绍

plc是什么_单片机是什么_plc和单片机哪个简...

PLC = Programmable Logic Controller,可编程逻辑控制器,一种数字运...

发表于 2018-04-02 17:03 355次阅读
plc是什么_单片机是什么_plc和单片机哪个简...

关于比特币源码技术的分析

为了存储、搜索、读取在内存与磁盘中的区块和交易信息,比特币引入了一些访问类。它们包括:CBlockI...

发表于 2018-04-02 16:55 184次阅读
关于比特币源码技术的分析

人工智能学习应该读的书籍

人工智能相关岗位中,涉及到的内容包含:算法、深度学习、机器学习、自然语言处理、数据结构、Tensor...

发表于 2018-04-02 11:35 258次阅读
人工智能学习应该读的书籍

为工业机器人编程的主流离线编程软件

我们今天讲解的重点是离线编程,通过示教在线编程在实际应用中主要存在的问题,来说说机器人离线编程软件的...

发表于 2018-04-02 10:59 293次阅读
为工业机器人编程的主流离线编程软件

单片机编程及芯片操作简单总结

如果我们把这个“口”字图形的“.”处用“0”代替,就可以很形象地得到“口”的字形码:0000H 00...

发表于 2018-04-02 09:08 253次阅读
单片机编程及芯片操作简单总结

C语言:条件编译及预定义符号知识详解

宏定义永远不要吝啬括号,防止因为优先级的问题导致出现不可思议的后果 宏不能实现递归 宏只文本替换,并...

发表于 2018-03-31 09:20 482次阅读
C语言:条件编译及预定义符号知识详解

FLASH操作程序设计与存储器结构

这是一个非常经典的TI的关于FLASH存储模块的程序,在几乎所有的关于MSP430的书籍等资料上都可...

发表于 2018-03-30 16:02 261次阅读
FLASH操作程序设计与存储器结构

嵌入式操作系统都基于GCC进行源码编译

系统头文件是指C语言本身和操作系统相关的头文件。在使用-v选项获取系统头文件路径时,必须后面带一个有...

发表于 2018-03-30 13:57 130次阅读
嵌入式操作系统都基于GCC进行源码编译

收藏!我的单片机C语言编程心得都在这里了

迄今为止,写过的程序都是一些很简单的程序,从来没有想到要自己写.H文件,也不知道.H文件到底什么用,...

发表于 2018-03-30 13:50 316次阅读
收藏!我的单片机C语言编程心得都在这里了

现在市场上有哪些单片机很火的_单片机市场现状分析

本文主要介绍了现在市场上有哪些单片机很火的_单片机市场现状分析以及单片机结构介绍。单片机是一种集成电...

发表于 2018-03-30 13:30 489次阅读
现在市场上有哪些单片机很火的_单片机市场现状分析

怎么知道单片机型号_单片机型号的判断

本文主要介绍了怎么知道单片机型号_单片机型号的判断。AT89系列包括两大类第一类是常规的,就是AT8...

发表于 2018-03-30 13:09 442次阅读
怎么知道单片机型号_单片机型号的判断

单片机上电复位电路图大全

本文主要介绍了单片机上电复位电路图大全。复位电路由按键复位和上电复位两部分组成。上电复位:STC89...

发表于 2018-03-30 10:42 735次阅读
单片机上电复位电路图大全

机器学习应用中的常见问题分类问题你了解多少

分类问题是机器学习应用中的常见问题,而二分类问题是其中的典型,例如垃圾邮件的识别。本文基于UCI机器...

发表于 2018-03-29 16:40 503次阅读
机器学习应用中的常见问题分类问题你了解多少

一个程序员的脑回路进程分析

写在前面:这篇回答并不是讲述在生活中程序员如何买苹果,而是以买苹果为例说明程序员如何解决问题。

发表于 2018-03-29 15:38 175次阅读
一个程序员的脑回路进程分析

杜绝鸡汤:电子设计的几点哲学思考

设计很重要,工程也很关键。理论要结合实际,才能做好产品。

发表于 2018-03-29 15:04 220次阅读
杜绝鸡汤:电子设计的几点哲学思考

什么是可移植?C语言是如何做到可移植的?

什么是可移植?如何才能可移植?C语言是如何做到可移植的?对于初学者,可移植可能是一个经常遇到却很神秘...

发表于 2018-03-29 14:41 163次阅读
什么是可移植?C语言是如何做到可移植的?

嵌入式开发与单片机开发区别何在

嵌入式开发就是设计特定功能的计算机系统,手机,mp3、mp4,mp5,自动供水系统,洗衣机,油井监控...

发表于 2018-03-29 13:49 248次阅读
嵌入式开发与单片机开发区别何在

Linux C多线程编程之互斥锁与条件变量实例详...

死锁主要发生在有多个依赖锁存在时, 会在一个线程试图以与另一个线程相反顺序锁住互斥量时发生. 如何避...

发表于 2018-03-29 11:53 201次阅读
Linux C多线程编程之互斥锁与条件变量实例详...

单片机嵌入式编程要记住的5个要点

在单片机编程的过程中,如果一名设计者能够同时掌握多门编程语言,那么这名设计者肯定是一位非常优秀的人才...

发表于 2018-03-29 10:03 311次阅读
单片机嵌入式编程要记住的5个要点

高手讲解PIC单片机:单片机的入门就是这么简单

单片机里有一些部件需要我们使用和操作,都是通过读写寄存器来实现的。每个部件都对应有操控它的寄存器,例...

发表于 2018-03-29 09:26 292次阅读
高手讲解PIC单片机:单片机的入门就是这么简单

C语言基本知识点和编程规范详解

局部变量,不加说明默认为auto型,即动态存储,如果不赋初值,将是一个不确定的值。而将局部变量定义为...

发表于 2018-03-29 09:21 116次阅读
C语言基本知识点和编程规范详解

怎样才能快速学习8051单片机呢

学习单片机,你不能没有一本纸质的教程,到本地的书店挑选或便宜的可以到卓越、当当网掏一掏。有了教程能更...

发表于 2018-03-29 09:16 270次阅读
怎样才能快速学习8051单片机呢

一种可减少入侵云,雾和边缘系统的机会的信任系统

“面向行为编程(Action-Oriented Programming,AcOP)模型和相关框架可根...

发表于 2018-03-29 08:49 183次阅读
一种可减少入侵云,雾和边缘系统的机会的信任系统

关于51单片机的电容、电感、频率测量仪(LCF表...

大体测量范围电感测量范围: 0.1μH-----1H小电容测量范围: 1pF----2....

发表于 2018-03-28 17:00 617次阅读
关于51单片机的电容、电感、频率测量仪(LCF表...

初学C语言请一定要看完 C语言误区详解

今天,我能够自称是一个混IT的人,并能以此谋生,将来大家能一次谋生,都要感谢两个人:克劳德.香农和约...

发表于 2018-03-28 16:13 341次阅读
初学C语言请一定要看完 C语言误区详解

一文看懂单片机排阻的作用

本文开始介绍了排阻的阻值读取方式,其次介绍了排阻的作用和排阻的引脚说明,最后介绍了51单片机最小系统...

发表于 2018-03-28 10:29 131次阅读
一文看懂单片机排阻的作用

如何轻松使用Python写出漂亮的命令行程序

诞生之初用来作为配置管理语言的Python,现在已经成为最流行的编程语言之一,尤其是随着AI应用的兴...

发表于 2018-03-28 09:28 283次阅读
如何轻松使用Python写出漂亮的命令行程序

小白如何用C++制作网游DNF技能特效

十年前,那时候的网吧还不叫网咖,那时候没有王者荣耀也没有英雄联盟,那时候梦幻西游刚推出珍宝阁系统,那...

发表于 2018-03-27 15:30 350次阅读
小白如何用C++制作网游DNF技能特效

C语言编译器是用来做什么的

C语言是一种结构化语言。它层次清晰,便于按模块化方式组织程序,易于调试和维护。C语言的表现能力和处理...

发表于 2018-03-27 13:47 271次阅读
C语言编译器是用来做什么的

C语言编译器哪个好_6款好用的C语言编译器推荐

使用VC++6.0中文版,因为国家考试用的就是那个,当然了还有Turbo C这个也是以前国家考试用的...

发表于 2018-03-27 11:20 507次阅读
C语言编译器哪个好_6款好用的C语言编译器推荐

学习c语言需要什么软件_c语言编程软件有哪些

C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储...

发表于 2018-03-27 10:58 481次阅读
学习c语言需要什么软件_c语言编程软件有哪些

以太网控制器ENC28J60配置单片机“电子邮差...

为简化系统设计,本系统采取直接发送16×16LED点阵数据的方法,此方法可以去除单片机汉字点阵库的设...

发表于 2018-03-27 10:03 120次阅读
以太网控制器ENC28J60配置单片机“电子邮差...

基于单片机的智能环境数据采集小车系统设计

本文主要一个基于单片机的智能环境数据采集小车系统的设计,能实现环境温湿度的采集、发送、接收、处理、显...

发表于 2018-03-27 00:45 195次阅读
基于单片机的智能环境数据采集小车系统设计

单片机串行接口工作方式

串行口的工作方式0为移位寄存器输入输出方式,方式0发送或接收完8位数据后由硬件置位发送中断标志TI或...

发表于 2018-03-26 16:22 523次阅读
单片机串行接口工作方式

字符串函数strlen的深入研究

本系列是为了剖析crt库中intel模块下的那些函数的,那么我们去找找那里面有没有strlen的实现...

发表于 2018-03-26 16:01 252次阅读
字符串函数strlen的深入研究

一种可以优雅编程的语言Python知识点汇总

另一个原因是我们可以将 Python 用在很多地方:数据科学、Web 开发和机器学习等都可以使用 P...

发表于 2018-03-26 15:58 163次阅读
一种可以优雅编程的语言Python知识点汇总

atmega48单片机特性 atmega48的低...

atmega48单片机低功耗系统设计首要是选择合适的单片机。atmega48单片机是一款8位微控制器...

发表于 2018-03-26 15:48 81次阅读
atmega48单片机特性 atmega48的低...

多级操作菜单显示系统设计

本文旨在提供一个轻量级的单片机多级菜单实现方法,以较少的系统资源消耗和简单方便的方法完成菜单设计。考...

发表于 2018-03-26 15:07 76次阅读
多级操作菜单显示系统设计

单片机5V转3.3V电平的19种方法技巧

在选择 LDO 时,重要的是要知道如何区分各种LDO。器件的静态电流、封装大小和型号是重要的器件参数...

发表于 2018-03-26 14:51 741次阅读
单片机5V转3.3V电平的19种方法技巧

基于Atmega 8单片机的车辆加速减速PID控...

本文介绍的汽车自动巡航控制系统可以有效地减轻驾驶员的疲劳,避免交通事故,并利于环保。当在高速公路上长...

发表于 2018-03-26 14:50 166次阅读
基于Atmega 8单片机的车辆加速减速PID控...

基于C8051F023单片机的OLED显示实现设...

本文利用单片机C8051F023作为128×64单色OLED的控制核心器件,采用的是维信诺公司的一款...

发表于 2018-03-26 14:47 111次阅读
基于C8051F023单片机的OLED显示实现设...

基于STM32F103VCT6单片机的微位移控制...

根据微位移控制系统的设计要求,首先应保证控制系统的定位精度,其次应尽量做到结构简单,成本低,操作简便...

发表于 2018-03-26 14:39 197次阅读
基于STM32F103VCT6单片机的微位移控制...

单片机怎么学快?快速学单片机方法

当前的单片机种类很多,但是 51 是最基础的,因此单片机的学习最好也是从 51 开始,不仅容易上手,...

发表于 2018-03-26 08:53 277次阅读
单片机怎么学快?快速学单片机方法

学嵌入式能不能只用C写程序?

想深入链接C语言的函数是如何调用的,参数是如何传递的,想了解指针的本质、函数名的本质,就要深入汇编级...

发表于 2018-03-26 08:34 240次阅读
学嵌入式能不能只用C写程序?

C语言作为高级编程语言中的一门“低级”语言为什么...

看开源代码是程序员进阶的一个很好途径,而很多开源的软件,都是用C语言实现的。Linux/Unix系统...

发表于 2018-03-23 16:04 471次阅读
C语言作为高级编程语言中的一门“低级”语言为什么...

你该了解的单片机复位电路

影响单片机系统运行稳定性的因素可大体分为外因和内因两部分:射频干扰,电源线或电源内部产生的干扰

发表于 2018-03-23 16:03 688次阅读
你该了解的单片机复位电路

整理总结一份属于自己的编码风格

· Lib:引用的库文件。 一个工程一定要包含一个main.c文件,只用来存放main函数。其余函...

发表于 2018-03-23 11:48 238次阅读
整理总结一份属于自己的编码风格

一个最简单的事件驱动的IO libevent编程...

本文演示一个最简单的基于libevent编程的例子。libevent是事件驱动的IO,适用于“好莱坞...

发表于 2018-03-23 09:54 202次阅读
一个最简单的事件驱动的IO libevent编程...

C语言位运算+实例讲解

C语言位运算有6种: &, | , ^(亦或), <<(左移), >>(右移)。 注意:参与位运算...

发表于 2018-03-22 16:00 368次阅读
C语言位运算+实例讲解

开发者不可错过的开源项目—人工智能篇

推荐 10 个饱受好评且功能独特的开源人工智能项目关于人工智能的项目

发表于 2018-03-22 14:52 579次阅读
开发者不可错过的开源项目—人工智能篇