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

[复制链接]
10586|72
 楼主| 899000 发表于 2013-1-7 11:17 | 显示全部楼层
xygxy 发表于 2013-1-7 11:06
估计平时没有好好学吧。这个真不能算大作业。11楼给出了大概的思路,主程序循环显示,中断发生后修改取段码 ...

弱弱的问下,11楼的0-F怎么弄到数码管
 楼主| 899000 发表于 2013-1-7 11:39 | 显示全部楼层
明月小厨 发表于 2013-1-7 11:35
昨天刚看了一个**说美国的大学生是多么辛苦,
白天上课,其它时间(每天6小时左右做作业),然后打工赚钱缴学 ...

我知道你们都是单片机方面的专家 ,随你们怎么说了 如果只有单片机一门课,我还真不会这样
cubasa 发表于 2013-1-7 11:43 | 显示全部楼层
字库数组+指针,指针循环+1,调用显示子程序,指针遇到外部中断清零。
forrest11 发表于 2013-1-7 11:49 | 显示全部楼层
先用C,编译好了就有汇编代码了。

评论

太有才了,有这么厉害的高手还怕小日本么.................  发表于 2013-1-7 13:59
coody 发表于 2013-1-7 11:52 | 显示全部楼层
大作业
 楼主| 899000 发表于 2013-1-7 11:59 | 显示全部楼层
各位神啊,其实我们学了点皮毛而已啊,就学了51语句,定时器,中断,串行
 楼主| 899000 发表于 2013-1-7 12:06 | 显示全部楼层
coody 发表于 2013-1-7 11:52
大作业

那还是叫小作业吧
ocon 发表于 2013-1-7 12:30 | 显示全部楼层
如果连楼主这样的都不挂科,中国的大学还有什么希望?

评论

我上学那回,和电子相关的科目全挂,可是现在还是从事着电子工作。DT  发表于 2013-1-7 22:56

评分

参与人数 2威望 +2 收起 理由
明月小厨 + 1 现在学校的风气不好,人生最关键的时期却荒.
icecut + 1

查看全部评分

ocon 发表于 2013-1-7 12:31 | 显示全部楼层
cuiyong0709 发表于 2013-1-7 10:52
我上学的时候老师让用汇编做32*32位的乘法运算,我不会汇编,用c语言写的交上去了,直接就挂了…… ...

勇气可嘉。
xygxy 发表于 2013-1-7 12:33 | 显示全部楼层
899000 发表于 2013-1-7 11:17
弱弱的问下,11楼的0-F怎么弄到数码管

根据你的硬件图看看数码管的段是高电平亮还是低电平亮,就知道对应的P0输出的电平了。再按照各个数字的笔画与电路接线,不难得到段码。很多单片机的书可以查到段码。我还是希望你能自己弄出来。ok?
justin108 发表于 2013-1-7 12:38 | 显示全部楼层
偷**取巧的办法是用C写,然后编译后看汇编。你有汇编功底,改起来很简单
 楼主| 899000 发表于 2013-1-7 12:38 | 显示全部楼层
ocon 发表于 2013-1-7 12:30
如果连楼主这样的都不挂科,中国的大学还有什么希望?

不好意思,我还真没挂过科
mcu_david 发表于 2013-1-7 13:01 | 显示全部楼层
太简单了
先将16个段码存在数组里,汇编的话是指定地址写DB
在INT0中断服务程序里将数组指针归零,中断触发条件是边沿触发,上跳沿(低变高),避免长按得死循环
开定时器,在定时中断服务里指针加一,到16就归零
在主循环里按照指针取段码,送出去显示就是了
bruceding 发表于 2013-1-7 13:35 | 显示全部楼层
拿c语言写,然后直接拷贝编译后的汇编就行了。
 楼主| 899000 发表于 2013-1-7 13:56 | 显示全部楼层
明月小厨 发表于 2013-1-7 13:52
所以现在的大学生毕业工作不好找,能让他们干什么呢?
当年我看到台湾专科的教材大吃一惊;全部都是象楼主这样 ...

我现在在自己做拉 ,你停会吧
 楼主| 899000 发表于 2013-1-7 14:00 | 显示全部楼层
明月小厨 发表于 2013-1-7 13:52
所以现在的大学生毕业工作不好找,能让他们干什么呢?
当年我看到台湾专科的教材大吃一惊;全部都是象楼主这样 ...

那你是怎么过来的
link8001 发表于 2013-1-7 14:44 | 显示全部楼层
899000 发表于 2013-1-7 10:57
恩 迷迷糊糊有点懂了 ,就是怎么把A里的数弄到数码管啊

MOV P0,A
CLR P2.0
直接写入
 楼主| 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

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
chenbb8 发表于 2013-1-7 16:16 | 显示全部楼层
大学培养的是全才么,挂个科怎么了,出来不一定用的到

评分

参与人数 1威望 +1 收起 理由
logokfu + 1 有道理

查看全部评分

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部