单片机at89c51 如何使之单口产生vdd 1/2vdd 0的输出? 200
6个回答
展开全部
at89C51单片机的一个I/O位,只能输出高/低两种状态。若可以利用2个I/O引脚,配合搭建外部电路是可以实现题目要求的功能的。但如果使用的是采购的成品单片机模块,追加外部扩展电路会要增加一起工作。
如果是完全自己设计单片机电话,有一个简单可行的办法。现在一些厂家出产的51系列兼容单片机,在芯片内部中集成了DA转换器,利用DA转换器输出脚(一般都是与I/O引脚复用),可以方便地实现在一条引脚上输出不同的电压。只耍选择一款符合要求的单片机,就可以通过程序控制DA输出电压,实现题目要求。
如果是完全自己设计单片机电话,有一个简单可行的办法。现在一些厂家出产的51系列兼容单片机,在芯片内部中集成了DA转换器,利用DA转换器输出脚(一般都是与I/O引脚复用),可以方便地实现在一条引脚上输出不同的电压。只耍选择一款符合要求的单片机,就可以通过程序控制DA输出电压,实现题目要求。
展开全部
单片机IO口要产生1/2VDD(或者用ⅠO口驱动液晶屏),需要单片机IO口具有高阻态(开路)设置功能(STC系列单片机就可以做到ⅠO口输出1/2VDD,不过ⅠO口需要加上下拉电阻),一般驱动液晶屏需要用四个ⅠO口加上下拉电阻(用8个100K电阻做过液晶驱动),需要配合软件对IO口的设置(就是定时对IO口进行 开漏与推挽输出的转换设置,就可以完成对液晶屏的驱动。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
显然这是一个比较有挑战性且看似不可能实现的问题,但是我想如果对输出波形的质量要求不高,可以尝试用时间换空间的方法实现,即采用PWM方式实现,思路有了实现就很简单了,只要用50%占空比的方波输出去实现1/2Vdd,其它就不是问题了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
单片机IO只能两态输出,你这个要求三态变化了,一个普通IO是实现不了的。可以外接DA(如果时序周期过短,无法用此法实现)或用两个IO推挽外部硬件实现。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
老铁没什么要求的话,用单片机控制三极管开关电路,可以钳压,电阻分压,可参考ttl电路
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询