当前位置:首页 > 单片机 > 单片机
[导读]简介  电子产品是我的爱好。当我在大学的时候,我曾与微控制器的一些经验,我没有与Atmel的AT89C51的几个项目。最近,我已经长大了PIC单片机的利息,我想我应该开始用8针的微芯片。我挑的PIC12F683微芯片。该微控制

简介

  电子产品是我的爱好。当我在大学的时候,我曾与微控制器的一些经验,我没有与Atmel的AT89C51的几个项目。最近,我已经长大了PIC单片机的利息,我想我应该开始用8针的微芯片。我挑的PIC12F683微芯片。该微控制器让我着迷了很多,因为我想看看我们能做些什么与8引脚微控制器(其中2个引脚的电源,所以实际上只是6针左侧的I / O)。所以我想这是我自己的学习板。在这个项目中,我首先要说明我的学习板,然后将演示几个实验。PIC12F683的一些功能: 工作电压范围宽(2.0 - 5.5V)

  精确的内部振荡器(软件可选,8 MHz到125千赫)

  6 I / O引脚电平变化中断功能。

  4个10位A / D转换器

  两个8位和16位定时器

  一个捕捉,比较和PWM模块

  在线串行编程

  程序存储器- 2048字,以SRAM为128字节,电可擦除可编程只读存储器(EEPROM),256个字节

  电路布局和设计

  本学习板具有以下特点:

  一个9V直流的开关电源输入插座

  稳压+5 V电源使用7805芯片

  3输出LED和LED电源1

  2输入轻触开关

  2电位器:一个模拟输入,并提供ADC的参考电压

  基于晶体管的TTL - RS232电平转换器的串行通信。

  一个一个晶体管驱动直流马达。

  压电蜂鸣器

  在黑板上的大多数这些功能是通过女性的针脚访问。6 - I / O引脚的PIC12F683的是硬连接到任何东西,他们通过针脚。的数字 显示PIC12F683的引脚,女性的头和跳线用于连接电路板上的类型,学习板的详细电路图。只有ISCP引脚是通过男性的针脚访问 。整个电路是建立在一个8 × 12厘米的一般原型板。

  

 

  

 

  正如你看到的输出LED470Ω电流串联限流电阻,使一个PIC引脚可以安全驾驶。还通过一个串联电阻PIC引脚直接驱动压电式蜂鸣器。但是,直流电动机作为S8050晶体管的集电极负载所需的电流来驱动电机,不能由PIC端口提供连接。因此,PIC端口可以拉动其基高开关晶体管和晶体管集电极电流提供足够的电流来驱动电机。 TTL RS232电平转换,反之亦然实现两个晶体管和其他一些组件。 RS232电平所需的负电压是从一台PC本身的RS232端口被盗 。注意有没有硬件UART内部的PIC12F683,因此从微控制器的串行数据传输到PC将可能只有通过通过GP0任何软件UART,GP1,GP2的,GP4,GP5端口(GP3仅输入) 。微控制器端的发射机和接收机端口UTX和URX表示,而在PC端Tx和Rx,分别记为。线路图显示,轻触开关与两个电位器输出和所有8个PIC12F683的引脚的两个输入是通过女性的头访问。轻触开关低电平有效,也就是说,在正常情况下,轻触开关输出为高电平,当它被按下时,输出为低电平。有情侣的头做实验时,可能需要额外的VCC和GND端子。电源电路是7805稳压IC的标准电路。一个供电指示灯是与一个470Ω的系列电阻跨接在VCC和GND。在电路串行编程(ICSP)的PIC12F683的,可以用两个引脚:ICSPDAT(引脚7)和ICSPCLK(引脚6)。编程电压Vpp的,应提供引脚的PIC12F683编程时,4。所需的所有ISCP引脚通过一个男性头,所以可以通过任何ICSP PIC的程序员编程的PIC。确保程序员方和我们的学习板ISCP引脚顺序相匹配。重要事项:在ICSP引脚4,6,和PIC12F683的7应该不会被连接到任何东西,离开他们所以,不会有任何编程器和外部电路之间的电压冲突。

   软件开发

 

  在PIC12F683的汇编语言或高级语言,你可以写你的实验方案。但是,我要在这里展示的实验,我是用从MikroElektronica mikroC编译器的免费版本。它是一个C编译器的PIC微芯片,并免费版本限制输出程序的大小为2K。但我们并不需要为PIC12F683的不止于此。

  PIC12F683的,我们将使用下面的配置位。mikroC,您可以在“编辑”项目“窗口中选择。

  振荡器:内部RC,没有时钟

  WDT关闭

  主清除残疾人

  对于所有的实验表明,使用4.0 MHz的内部时钟。

  为PIC12F683的完成学习板

  

 

  

 

  

 

  测试实验

  再次阅读,然后再继续以上的软件开发部分。

  ************************************************** *******************************

  实验1号:3位二进制计数器

  本次实验的目的是建立一个3位二进制上升计数器,每个计数之间的延迟1秒计数从000到111。到111后,它重置为000,并再次开始计数。计数值将显示在三个LED。

  安装: 连接GP0,GP1和GP2(PIC的引脚7,6和5)LED 3,2和1。

  

 

  / *

  PIC12F683的实验局

  Experimen号1:3位计数器

  “指示灯1,2和3是连接到GPIO2,GPIO1和GPIO0,

  分别为“

  * / 短我; 无效的主要(){ CMCON0 = 7; / /禁用比较 TRISIO = 8 / / GPIO0 - GPIO2输出和GP3是默认输入 的ANSEL = 0;/ /没有ADC GPIO = 0; delay_ms(500) I = 0; { GPIO = I; delay_ms(1000); I = 1; (我== 8)I = 0; }(1);}

  在mikroC编译这个程序,负载??内的PIC12F683与任何ICSP编程。输出:

 

  

 

  在LED上显示的3位计数器实验第2号:轻触开关输入和电机控制。本次实验的目的是两个轻触开关来控制电机。当按下一个开关,电机就会开启,其他关闭。安装: 将SW1和SW2引脚(引脚7)GP0和GP1的PIC12F683(引脚6)。还可以连接电机驱动器的引脚GP2的(引脚5 )。因此,GP0和GP1均为输入和GP2输出。请记住,当按下开关时,相应的SW引脚被拉低 。在正常情况下,SW1和SW2拉高。

  软件

  /* Motor ON/OFF control with tact switches

  Rajendra Bhatt, Sep 3, 2010

  PIC12F683, MCLR OFF, Internal Oscillator @ 4.00MHz

  */

  sbit Start_Button at GP0_bit;

  sbit Stop_Button at GP1_bit;

  sbit Motor at GP2_bit;

  void main() {

  CMCON0 = 7; // Disable Comparators

  TRISIO = 0x03; // 0000 0011 GPIO 0, 1, Inputs; Rest are O/Ps

  ANSEL = 0x00;

  Motor = 0;

  do {

  if (!Start_Button) { /* When a tact switch is pressed, Logic I/P is 0*/

  Delay_ms(100);

  Motor = 1; // Turn Motor ON

  }

  if (!Stop_Button) {

  Delay_ms(100);

  Motor = 0; // Turn Motor ON

  }

  } while(1);

  }

  输出:当SW1按下时,电机将开启,并按下SW2时,它会熄灭。

  

 

  实验3: 软件UART测试。

  本次实验的目的是发送一个字符串到PC使用的软件UART例程。该字符串将被转移到PC上的超级终端窗口显示时,按下SW1开关。字符串将被按下开关

  安装:微控制器端:

 

  连接UTX和SW1引脚GP0(引脚7)和GP1端口分别。

  PC端:

  连接RX(2),TX(3)和GND(5)针板相应的PC机的RS232端口引脚。此外,在PC上定义以下设置一个新的连接的超级终端窗口。

  BPS = 9600,数据位= 8;校验=无,停止位= 1; =硬件流量控制

  

 

  软件

  /*

  PIC12F683 Experiment Board

  Experimen No. 3 : Read analog voltage from AN0 and diplay

  on Hyperterminal window on PC using Software UART.

  Date: 06/25/2010

  */

  char Message1[] = "Digital Value= ";

  unsigned int adc_value, backup=0 ;

  char *temp = "0000", error;

  int i;

  void main() {

  CMCON0 = 7;

  TRISIO = 11; // GPIO 0, 1, 3 Inputs; Rest are O/Ps

  ANSEL = 0;

  GPIO = 0;

  // Define GPIO.3 as UART Rx, and 5 as Tx

  error = Soft_UART_Init(&GPIO,3, 5, 9600, 0 );

  Delay_ms(100);

  do {

  adc_value = ADC_Read(0);

  if(adc_value != backup) {

  if (adc_value/1000)

  temp[0] = adc_value/1000 + 48;

  else

  temp[0] = '0';

  temp[1] = (adc_value/100)%10 + 48;

  temp[2] = (adc_value/10)%10 + 48;

  temp[3] = adc_value%10 + 48;

  for (i=0; i<= 13; i++) {

  Soft_UART_Write(Message1[i]);

  Delay_ms(50);

  }

  for (i=0; i<= 3; i++) {

  Soft_UART_Write(temp[i]);

  Delay_ms(50);

  }

  Soft_UART_Write(10); // Line Feed

  Soft_UART_Write(13); // Carriage Return

  backup = adc_value;

  }

  delay_ms(100);

  } while(1);

  }

  输出

  相应的模拟输入数字号码将显示在超级终端窗口。您可以改变电位器和数字同等数量也将发生变化。请记住,ADC是10位,让您在屏幕上看到的数量将会从0000到1023。

  

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

【2024年5月13日,德国慕尼黑和斯图加特讯】随着汽车行业向软件定义汽车和新E/E架构过渡,市场对高性能硬件和强大网络安全解决方案的需求也逐渐增加。为满足这一需求,全球功率系统和物联网领域的半导体领导者英飞凌科技股份公...

关键字: 微控制器 半导体 物联网

本文针对电动两轮车自燃防控装置的开发与分析进行了研究。通过电动两轮车自燃原因分析,提出了电动两轮车的自燃防控智能装置设计思路,介绍了电动两轮车的自燃防控智能

关键字: STC89C52RC 单片机 微控制器

5月8日,中星联华技术支持总监苏水金给带来《精密测试关键技术大揭秘!》,详解中星联华超低相噪微波信号源的6大核心特色,助您快速精准测试,解决尖端测试的苛刻要求。

关键字: ADC 自动编程 相噪

【2024年5月9日,德国慕尼黑讯】信息安全与功能安全在汽车行业发挥着日益重要的作用,即便在低端微控制器应用中也不例外。与此同时,汽车制造商正在用触摸表面取代机械按钮,实现简洁的驾驶舱和方向盘。因此,电子电路的空间受到很...

关键字: 物联网 电子电路 微控制器

【2024年5月8日,德国慕尼黑讯】Rust编程语言凭借其独特的内存安全特性,已经成为汽车软件开发中C/C++的有效补充和潜在替代品。全球功率系统和物联网领域的半导体领导者英飞凌科技股份公司(FSE代码:IFX / OT...

关键字: 编译器 微控制器

2024年5月6日 – 专注于引入新品的全球电子元器件和工业自动化产品授权代理商贸泽电子 (Mouser Electronics) 即日起开售Analog Devices, Inc. (ADI) 的MAX32690微控制...

关键字: 可穿戴设备 微控制器 片上系统

【2024年4月29日, 德国慕尼黑讯】嵌入式安全被认为是物联网(IoT)应用部署的一个重要属性。英飞凌科技股份公司(FSE代码:IFX / OTCQX代码:IFNNY)近日宣布,其新型PSOC™ Edge E8x MC...

关键字: 微控制器 MCU 物联网

2024年4月26日,中国 – 服务多重电子应用领域、全球排名前列的半导体公司意法半导体 (STMicroelectronics,简称ST;纽约证券交易所代码:STM) 公布了按照美国通用会计准则 (U.S. GAAP)...

关键字: 微控制器 模拟器件

利用LogiCoA™微控制器,以更低功耗实现与全数字控制电源同等的功能

关键字: 微控制器 电源 CPU

台湾新竹 – 2024年4月23日 – 著名的微控制器供货商新唐科技公司,与全软件开发生命周期提供跨平台解决方案的全球软件公司Qt Group宣布深化合作,扩展新唐科技人机界面(HMI)平台支持「Qt for MCUs」...

关键字: 微控制器 嵌入式系统 MCU
关闭
关闭