打印

单片机大作业不会要挂科,求大神

[复制链接]
楼主: 899000
手机看帖
扫描二维码
随时随地手机跟帖
21
899000|  楼主 | 2013-1-7 11:17 | 只看该作者 回帖奖励 |倒序浏览
xygxy 发表于 2013-1-7 11:06
估计平时没有好好学吧。这个真不能算大作业。11楼给出了大概的思路,主程序循环显示,中断发生后修改取段码 ...

弱弱的问下,11楼的0-F怎么弄到数码管

使用特权

评论回复
22
899000|  楼主 | 2013-1-7 11:39 | 只看该作者
明月小厨 发表于 2013-1-7 11:35
昨天刚看了一个**说美国的大学生是多么辛苦,
白天上课,其它时间(每天6小时左右做作业),然后打工赚钱缴学 ...

我知道你们都是单片机方面的专家 ,随你们怎么说了 如果只有单片机一门课,我还真不会这样

使用特权

评论回复
23
cubasa| | 2013-1-7 11:43 | 只看该作者
字库数组+指针,指针循环+1,调用显示子程序,指针遇到外部中断清零。

使用特权

评论回复
24
forrest11| | 2013-1-7 11:49 | 只看该作者
先用C,编译好了就有汇编代码了。

使用特权

评论回复
评论
huangxz 2013-1-7 13:59 回复TA
太有才了,有这么厉害的高手还怕小日本么................. 
25
coody| | 2013-1-7 11:52 | 只看该作者
大作业

使用特权

评论回复
26
899000|  楼主 | 2013-1-7 11:59 | 只看该作者
各位神啊,其实我们学了点皮毛而已啊,就学了51语句,定时器,中断,串行

使用特权

评论回复
27
899000|  楼主 | 2013-1-7 12:06 | 只看该作者
coody 发表于 2013-1-7 11:52
大作业

那还是叫小作业吧

使用特权

评论回复
28
ocon| | 2013-1-7 12:30 | 只看该作者
如果连楼主这样的都不挂科,中国的大学还有什么希望?

使用特权

评论回复
评论
logokfu 2013-1-7 22:56 回复TA
我上学那回,和电子相关的科目全挂,可是现在还是从事着电子工作。DT 
评分
参与人数 2威望 +2 收起 理由
明月小厨 + 1 现在学校的风气不好,人生最关键的时期却荒.
icecut + 1
29
ocon| | 2013-1-7 12:31 | 只看该作者
cuiyong0709 发表于 2013-1-7 10:52
我上学的时候老师让用汇编做32*32位的乘法运算,我不会汇编,用c语言写的交上去了,直接就挂了…… ...

勇气可嘉。

使用特权

评论回复
30
xygxy| | 2013-1-7 12:33 | 只看该作者
899000 发表于 2013-1-7 11:17
弱弱的问下,11楼的0-F怎么弄到数码管

根据你的硬件图看看数码管的段是高电平亮还是低电平亮,就知道对应的P0输出的电平了。再按照各个数字的笔画与电路接线,不难得到段码。很多单片机的书可以查到段码。我还是希望你能自己弄出来。ok?

使用特权

评论回复
31
justin108| | 2013-1-7 12:38 | 只看该作者
偷**取巧的办法是用C写,然后编译后看汇编。你有汇编功底,改起来很简单

使用特权

评论回复
32
899000|  楼主 | 2013-1-7 12:38 | 只看该作者
ocon 发表于 2013-1-7 12:30
如果连楼主这样的都不挂科,中国的大学还有什么希望?

不好意思,我还真没挂过科

使用特权

评论回复
33
mcu_david| | 2013-1-7 13:01 | 只看该作者
太简单了
先将16个段码存在数组里,汇编的话是指定地址写DB
在INT0中断服务程序里将数组指针归零,中断触发条件是边沿触发,上跳沿(低变高),避免长按得死循环
开定时器,在定时中断服务里指针加一,到16就归零
在主循环里按照指针取段码,送出去显示就是了

使用特权

评论回复
34
bruceding| | 2013-1-7 13:35 | 只看该作者
拿c语言写,然后直接拷贝编译后的汇编就行了。

使用特权

评论回复
35
899000|  楼主 | 2013-1-7 13:56 | 只看该作者
明月小厨 发表于 2013-1-7 13:52
所以现在的大学生毕业工作不好找,能让他们干什么呢?
当年我看到台湾专科的教材大吃一惊;全部都是象楼主这样 ...

我现在在自己做拉 ,你停会吧

使用特权

评论回复
36
899000|  楼主 | 2013-1-7 14:00 | 只看该作者
明月小厨 发表于 2013-1-7 13:52
所以现在的大学生毕业工作不好找,能让他们干什么呢?
当年我看到台湾专科的教材大吃一惊;全部都是象楼主这样 ...

那你是怎么过来的

使用特权

评论回复
37
link8001| | 2013-1-7 14:44 | 只看该作者
899000 发表于 2013-1-7 10:57
恩 迷迷糊糊有点懂了 ,就是怎么把A里的数弄到数码管啊

MOV P0,A
CLR P2.0
直接写入

使用特权

评论回复
38
899000|  楼主 | 2013-1-7 15:30 | 只看该作者
link8001 发表于 2013-1-7 14:44
MOV P0,A
CLR P2.0
直接写入

求教  不知道中断里该怎么写org 0000h
  ljmp main
org 0003h
    ljmp int0
main: mov ie,#81h
     
     mov a,#00h
     mov dptr,#tab
     mov r4,#16
loop:mov b,a
     movc a,@a+dptr
     mov p0,a
     acall delay
     mov a,b
     inc a
     djnz r4,loop
     sjmp main




delay:MOV R7,#10
D1:   MOV R6,#200
D2:   MOV R5,#250
      DJNZ R5,$
      DJNZ R6,D2
      DJNZ R7,D1
      RET


tab:db 3fh,06h,5bh,4fh,66h
    db 6dh,7dh,07h,7fh,6fh
    db 77h,7ch,39h,5eh,79h
    db 71h
end

使用特权

评论回复
39
link8001| | 2013-1-7 15:45 | 只看该作者
        ORG         0000H
        LJMP        START
        ORG                0003H
        LJMP        INT_0
        ORG                0100H
START:
        SETB        IT0
        SETB        EX0
        SETB        EA
        MOV                R0,#00H ;用R0来计数
MAIN:
        MOV                DPTR,#TAB
        MOV                A,R0
        MOVC        A,@A+DPTR
        MOV                P0,A
        CLR                P2.0
           LCALL        DELAY

        MOV                A,R0
        INC                R0
        CJNE        A,#0FH,LOOP
        MOV                R0,#00H ;R0到15就归0,完成循环显示
LOOP:
        SJMP        MAIN
INT_0:
        MOV                R0,#00H ;中断里R0归0
        RETI
DELAY:
        MOV                R7,#64H
D_LOOP:
        MOV                R6,#0FFH
        DJNZ        R6,$
        DJNZ        R7,D_LOOP
TAB:
        DB        3FH,06H,5BH,4FH,66H,6DH,7DH,07H
        DB         7FH,6FH,77H,7CH,39H,5EH,79H,71H

        END

使用特权

评论回复
40
chenbb8| | 2013-1-7 16:16 | 只看该作者
大学培养的是全才么,挂个科怎么了,出来不一定用的到

使用特权

评论回复
评分
参与人数 1威望 +1 收起 理由
logokfu + 1 有道理
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则