这问题问的。。水平太差。。attiny只要上电,无任何外部元件,都能工作。
你们写这么长讲太多硬件的细节了,我就简单说几点:
1.硬件准备-确保供电和晶振工作
2.软件准备-根基你是用的什么软件环境做一个GPIO测试
2.1如果是arduino这种集成环境的,有接口pinMode+writePin就可以。
2.2如果是用C写的,就要做一点额外的软件工作了,包括:link文件(把代码放进相应的flash和ram中),启动代码,初始化系统时钟代码,gcc或者IDE环境编译。
3.经过第二步成功,系统就已经可以运行了,后面的工作就是加入各种模块的驱动,RTOS等
现在单片机这个大家庭中成员实在太多,每个成员的秉性都不太一样,就拿必须要有的工作电源来说,各个类别的单片机都不一样,比如C51系列的单片机其标准工作电压是5v;PlC单片机工作电源的电压是3.3V;像AVR单片机其最低电压可达1.8Ⅴ就能工作了!由此可知具有一定要求的电压范围是各种单片机工作必不可少的。
单片机能正常工作的另一个条件是要具有一定的时钟电路。由于单片机内部是一个复杂且规模庞大的集成度很高的时序电路,只有在时钟信号作用下才能对指令一条条地执行。这就要求不管什么种类的单片机都有产生时钟的电路,有的单片机需外接时钟振荡电路,最常见的就是外接晶体振荡器,像C51的单片机可以接6MHZ、11.0592MHZ、12MHZ等,现在有的控制芯片内部设有时序电路,可以不需要晶振了。
单片机的另一个必须的外设辅助电路我们叫它复位电路也叫重启电路,这种电路的作用是当单片机启动时,使其从程序的第一条指令开始,或者系统“死机”了,我们可以用这种电路重新启动系统,类似电脑的复位键。以上这些条件是单片机能够正常“存活”的必要条件,缺一不可。当然要使单片机真正“动”起来还需要给他赋于一定的“思想”,那就是程序。
以上是我对这个问题的看法,欢迎大家给予指导并参与讨论、观注、点赞!
要使单片机正常工作,必须给单片机提供合适的直流工作电压、时钟电路及复位电路,同时还要输入相关的程序。
上图是常用的AT89S52单片机的最小系统原理图。电容C1及电阻R1组成复位电路,接通电源后,即可在AT89S52的RST端产生一个复位信号。XTAL1和XTAL2端接的石英晶体及C2和C3与单片机内部电路振荡电路一起组成一个时钟电路,给单片机内部电路提供一个稳定的时钟信号。单片机的Vcc和GND端为电源端,一般接5V的稳定电压,该5V电压可以由7805或AMS1117-5.0来产生。上述外围元件接好后,只要给AT89S52输入相关程序,其便可以正常工作。当然,若要单片机驱动负载工作,还要在其I/O口接上驱动电路,这样才能控制各种负载工作。
现在有不少引脚较少的单片机,内部都带有阻容振荡电路,若对时钟频率要求不高时,可以使用内置振荡电路,这样单片机的最小系统不需外接石英晶体,电路更简单。像上图所示的STM8S003F3P6单片机最小系统,只要接上复位电路、滤波电容及供电电压即可正常工作。上图中的R1和C1为复位电路,开机即可产生复位脉冲。电容C2为该单片机工作必不可少的,一般选用零点几μF~几μF的电容。在该单片机的Vdd及Vss端接入3.3V或5V的直流工作电压,并输入程序即可使其工作。