摘要: 大部分的人都高估了1年内所能完成的事,而低估了10年之中所能完成的事。人生中重要的是开始,但要取得成就就需要一长段的时间。 你可以在街上随意叫住100个年轻人,一个个地问他们:“你认为你现在的生活和工作方式保证会让你在生活中一败涂地吗?” 当他们从最初的震惊中恢复过来,每个人都会说:“你有病啊?我的工作、生活方式会让我一定失败?我正在为光明的前途而努力工作,我一定能成功。” 每个人都这样想,真是可... 阅读全文
posted @ 2010-12-28 13:51 hnrainll 阅读(6913) 评论(1) 推荐(1) 编辑
摘要: 时间“四象限”法是目前很时髦的一种时间管理理论,我参加的培训主要讲的就是这方面的内容。“四象限”法是美国的管理学家科维提出的一个时间管理的理论,把工作按照重要和紧急两个不同的程度进行了划分,基本上可以分为四个“象限”:既紧急又重要(如客户投诉、即将到期的任务、财务危机等)、重要但不紧急(如建立人际关系、人员培训、制订防范措施等)、紧急但不重要(如电话铃声、不速之客、部门会议等)、既不紧急也不重要(... 阅读全文
posted @ 2010-12-28 12:58 hnrainll 阅读(1426) 评论(0) 推荐(0) 编辑
摘要: /******************************* PORTB的RB0可以作为一个外部中断信号输入,可以对输入信号的上升沿或下降沿跳变产生一个中断响应。 要实现RB0/INT中断源,软件初始化设定步骤如下: 1,RB0/INT引脚为输入模式,TRISB0 = 1; 2,INTEDG = 1,RB0上输入信号上升沿产生中断;INTEDG = 0,下降沿中断 3,清除INTF = 0,确... 阅读全文
posted @ 2010-12-28 02:33 hnrainll 阅读(5862) 评论(0) 推荐(0) 编辑
摘要: PORTB的功能基本就是普通IO,但它在其他方面有其他引脚不具备的特点,PORTB的每一个引脚在作为输入时,内部都有一个弱上拉可用。   PORTB的RB0可以作为一个外部中断信号输入,可以对输入信号的上升沿或下降沿跳变产生一个中断响应。 要实现RB0/INT中断源,软件初始化设定步骤如下: 1,RB0/INT引脚为输入模式,TRISB0 = 1; 2,INTEDG = 1,RB0上输入... 阅读全文
posted @ 2010-12-28 02:31 hnrainll 阅读(1058) 评论(0) 推荐(0) 编辑
摘要: /*********PIC16F877A TMR0定时器实验2******* 使用前置分频器,为实现精确定时,不应对TMR0进行重复写入操作 PS2  PS1  PS0  0    0    0     2  分频 0    0    1     4  分频 0    1    0     8  分频 0    1    1     16 分频 1    0    0     32 分频 1  ... 阅读全文
posted @ 2010-12-28 01:46 hnrainll 阅读(1058) 评论(0) 推荐(0) 编辑
摘要: /********************* Forum:http://bbs.cepark.com Author:hnrain Date:2010-12-28 Email:hnrain1004@gmail.com *************************** TMR0用作定时器时,定时器时钟=系统时钟/4; 写TMR0时,会产生2个周期的的延时,如果不使用前置分频器,可通过设置 初值进... 阅读全文
posted @ 2010-12-28 01:24 hnrainll 阅读(1638) 评论(0) 推荐(0) 编辑
摘要: TMR0为8位宽,有一个可选的预分频器,用于通用目的,可用于定时和计数。 TMR1为16位宽,附带一个可编程的预分频器和一个可选的低频时基振荡器,适合与CPP模块配合使用来实现输入捕扣或输出比较功能,也可于定时和计数。 TMR2为8位宽,附带一个配合使用来实现PWM脉冲宽度调制信号的产生,只能用于定时。   TMR0用作定时器时,定时器时钟=系统时钟/4; 写TMR0时,会产生2个周期的的... 阅读全文
posted @ 2010-12-28 01:13 hnrainll 阅读(1062) 评论(0) 推荐(0) 编辑
摘要: #include <avr/io.h> #include <util/delay.h> #include <avr/interrupt.h> void port_init(void) { DDRB = 0xff; PORTB = 0xff; DDRD = 0x00; PORTD |= (1 << 2); } int main(void) { port_init(); GICR |= (1 << INT0); sei(); while(1) { ; } }ISR(INT0_vect)... 阅读全文
posted @ 2010-12-27 07:46 hnrainll 阅读(553) 评论(0) 推荐(0) 编辑
摘要: //*******************电子园PIC16F877A开发板 数码管计数器实验***************** // //CKP=0; 空闲为低电平 //CKP=1; 空闲为高电平 //STAT_CKE=0; SDO后沿采样 //STAT_CKE=1; SDO前沿采样 // //STAT_SMP=0; //在数据输出时间的中间采样输入数据 //ST... 阅读全文
posted @ 2010-12-27 00:51 hnrainll 阅读(828) 评论(0) 推荐(0) 编辑
摘要: //*****************电子园PIC16F877A开发板 普通IO驱动74595实验*************** // //PIC16F877A 实验板 // //mcu: PIC16F877A 4MHz //2010年7月10日21:52:30 //***************************************************************... 阅读全文
posted @ 2010-12-27 00:45 hnrainll 阅读(665) 评论(0) 推荐(0) 编辑
摘要: //****************电子园PIC16F877A开发板 数码管动态扫描实验**************** // // //mcu: PIC16F877A 4MHz //2010年12月22日9:36:29 //************************************************************************* #include ... 阅读全文
posted @ 2010-12-27 00:37 hnrainll 阅读(425) 评论(0) 推荐(0) 编辑
摘要: //*****************电子园PIC16F877A开发板 SPI总线驱动74595实验*************** // //CKP=0; 空闲为低电平 //CKP=1; 空闲为高电平 //STAT_CKE=0; SDO后沿采样 //STAT_CKE=1; SDO前沿采样 // //STAT_SMP=0; //在数据输出时间的中间采样输入数据 //... 阅读全文
posted @ 2010-12-27 00:23 hnrainll 阅读(880) 评论(0) 推荐(0) 编辑
摘要: PIR1 Register The PIR1 register contains the individual flag bits for the peripheral interrupts. PIR1 REGISTER PSPIF ADIF RCIF TXIF SSPIF CCP1IF TMR2IF TMR1IF SSPIF:Synchronous Serial Port Interrupt Flag bit 1 = The SSP interrupt condition has occurred and must be cleared in software before returnin 阅读全文
posted @ 2010-12-27 00:15 hnrainll 阅读(1889) 评论(0) 推荐(0) 编辑
摘要: PICC如果需要编写一段连续的汇编指令,PICC支持另外一种语法描述:用”#asm”开始汇编指令段,用“#endasm”结束。   阅读全文
posted @ 2010-12-26 00:46 hnrainll 阅读(192) 评论(0) 推荐(0) 编辑
摘要: /****************************************** ******PIC16F877A 内部EEPROM读写实验******* Author:hnrain Date:2010-12-26 Version:V0.1 Email:hnrain1004@gmail.com Forum:http://bbs.cepark.com _____________________... 阅读全文
posted @ 2010-12-26 00:16 hnrainll 阅读(1058) 评论(0) 推荐(0) 编辑
摘要: PICC中最好用前减来控制循环体。 来看看下面的语句: for(x = 100; –x;){;}和for(x = 0; x 100; x++){;} 在字面上2者意思一样的,便是可以能过汇编查看代码。后者代码雍长,而前者就很好的汇编出了简洁的代码。所以在PICC中最好用前者的形式来写循环体,好的C编译器会自动把增量循环化为减量循环。 PICC的位操作: 要是需要一个地址固定的变量来位操作... 阅读全文
posted @ 2010-12-25 23:35 hnrainll 阅读(697) 评论(0) 推荐(0) 编辑
摘要: 单片机位数概念:单片机是多少位是取决于数据总线的位数,如常用的8位,取数据宽度为8位,每次传送一个字节。   PIC的哈佛总线结构而言,程序存储器使用独立的指令总线,所以不受数据总线的限制。 PIC单片机的系统配置字:用于设定单片机的程序保护,在线调试,低压编程,掉电锁存复位使能位,上电定时,看门狗,振荡器模式等 基本的工作环境。只能由软件在烧写程序时设置,用户在程序中不能访问。 配置方式... 阅读全文
posted @ 2010-12-25 17:05 hnrainll 阅读(394) 评论(0) 推荐(0) 编辑
摘要: PIC16F87X采用的是精简指令集(RISC)结构,指令效率高,功能强。指令为单字的宽字位(14)指令。   阅读全文
posted @ 2010-12-25 16:47 hnrainll 阅读(481) 评论(0) 推荐(0) 编辑
摘要: 让我们来从PIC的指令结构上来分析一下为什么PIC中要有BANK和PAGE的设置吧。先来看一下为什么PIC中要把RAM区划分多个BANK。 仔细观察PIC汇编语言指令的格式,一条完整的汇编语言指令语句通常是这样的:标号 操作码助记符 操作数1,操作数2;注释。其中,主体部分是‘操作码助记符 操作数1,操作数2’。 例如: 指令:MOVF 33,1 操作码助记符:MOVF ; 操作数1:3... 阅读全文
posted @ 2010-12-25 15:38 hnrainll 阅读(1700) 评论(0) 推荐(1) 编辑
摘要: 可能的原因:也许,您该检查一下您的电源走线是不是够粗,或者,程序是不是一开始运行就点亮LED或者叫BUZZER?因为,PICmicro开始任务的电压通常是蛮低的。如果因为上述原因而让电压骤降,可能会让Vcc电压瞬间掉至reset电压以下,而造成重置。如果您的示波器不够好,很有可能根本观察不到此电压变动之状况。 WDT TIMEOUT 的标准时间为18mSec, 但是非常重要的一点, WDT TIM... 阅读全文
posted @ 2010-12-25 14:47 hnrainll 阅读(1894) 评论(0) 推荐(0) 编辑