Thông báo

Collapse
No announcement yet.

bác nào giải giúp em bài tập về time/counter cái,em đọc TL mà chưa làm được

Collapse
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • bác nào giải giúp em bài tập về time/counter cái,em đọc TL mà chưa làm được

    câu 1:trong chế độ định thời 8bit-auto reload.Tính giá trị cần nạp ban đầu của THo để tần số tràn của timer/counter o(tần số của bit TFo) bằng 307,2 khz,biết thạch anh ngoài của 8051 có tần số dao động là 22,1184 mhz.
    Câu 2UART)
    -tính giá trị của thanh ghi SCON để bộ truyền thông nối tiếp làm việc ở chế độ MODE 1(có tốc độ truyền phụ thuộc vào bộ định thời,baud rate=f tràn timer 0/32)
    -tính giá trị cần nạp ban đầu của THo để tốc độ truyền đạt các giá trị:
    1200 baud
    9600 baud
    115200 baud
    biết f thạch anh=11,0592 mhz
    (Các Kết quả tính được để ở dạng thập phân chuyển sang hexa và ngược lại)
    "các bác nào hiểu được BT này thì gợi ý giúp em với nhé,nói thêm cách chuyển sang hexa em cũng chưa được hiểu cho lắm"
    Thanks các pro nhé!,
    mong các mod sớm jup em,tại tuần sau em phải nộp bài rùi mà.

  • #2
    1. giá trị nạp vào timer sẽ đc tính theo công thức sau: Nt = 1+ 0xffh(256) - fosc/(12*fo);
    Nt là giá trị nạp vào TH0 của timer. fosc: tần số thạch anh. fo tần số yêu cầu.
    2. với uart thì hình như sẽ là chia thêm cho 32: N = 1+ 0xffh(256) - fosc/(12*buad*32);
    dù sao bạn cũng nên tự tính thì tốt hơn.
    |

    Comment


    • #3
      Nguyên văn bởi ubuntu7 Xem bài viết
      1. giá trị nạp vào timer sẽ đc tính theo công thức sau: Nt = 1+ 0xffh(256) - fosc/(12*fo);
      Nt là giá trị nạp vào TH0 của timer. fosc: tần số thạch anh. fo tần số yêu cầu.
      2. với uart thì hình như sẽ là chia thêm cho 32: N = 1+ 0xffh(256) - fosc/(12*buad*32);
      dù sao bạn cũng nên tự tính thì tốt hơn.
      bác giúp em chuyển sang cái hexa cái,em cũng hơi mơ màng về cái chuyển sang hệ hexa,và chuyển ngược lại sang hệ thập phân,thank các bác!
      mới có phần cứng của 8051 thôi mà em đã ko giải quyết dc,còn phần mềm thì chắc để mấy hôm nữa em nhờ các bác giúp sau nhé

      Comment


      • #4
        máy tính Casio FX570 đâu , bật lên
        - bấm mode 2 lần , chọn BASE .
        - chọn dex (nếu số nhập vào là thập phân ) . Sau khi nhập xong , nhấn =
        - sau đó nhấn HEX thì sẽ đc số hexa .
        - Lấy 2 số đầu nhập vào TH0 , 2 số sau vào TL0

        mấy cái giá trị này trong sách ng ta tính hết oy mà , tính chi nữa cho mệt rứa choy

        Comment


        • #5
          Nguyên văn bởi Zz_Bi_zZ Xem bài viết
          máy tính Casio FX570 đâu , bật lên
          - bấm mode 2 lần , chọn BASE .
          - chọn dex (nếu số nhập vào là thập phân ) . Sau khi nhập xong , nhấn =
          - sau đó nhấn HEX thì sẽ đc số hexa .
          - Lấy 2 số đầu nhập vào TH0 , 2 số sau vào TL0

          mấy cái giá trị này trong sách ng ta tính hết oy mà , tính chi nữa cho mệt rứa choy
          phải tính chứ các bác,chứ làm sao mà dùng máy tính được,tùy từng cái mà dùng máy tính để tính được thôi,bác có kinh nghiệm thì chỉ dùm em cái ,mà không bác nào chỉ dùm em cái BT này phát

          Comment


          • #6
            Nguyên văn bởi chienpv Xem bài viết
            phải tính chứ các bác,chứ làm sao mà dùng máy tính được,tùy từng cái mà dùng máy tính để tính được thôi,bác có kinh nghiệm thì chỉ dùm em cái ,mà không bác nào chỉ dùm em cái BT này phát
            ui thật là ... u chỉ cần bit phương pháp tính , hoặc công thức tính đó nó có ở đâu , ng ta làm ra máy tính làm chi ,tại sao phải tính mấy giá trị nạp đó chi cho mệt . Trong khi u đang tính thì bạn u đã cho chương trình chạy rẹt rẹt oy , khổ wa đi ! ủng hộ tinh thần tự lực cánh sinh ...

            Comment


            • #7
              bạn cứ dùng notepad gõ chương trình xong rồi save dang .hex la ok!Nạp cho vi điều khiển luôn!

              Comment


              • #8
                bác nào làm hộ mình bào này với:
                Trong truyền thông nối tiếp UART cho tần số thạch anh là:4mhz,Baud=600bps.tính tần số tràn của timer1 ?

                Comment


                • #9
                  Bài này nữa nè:
                  cho tần số thạch anh =12Mhz,trong bộ timer/counter số 0.sau khi TMOD =1,TH0=56,TL0=78h,TR0=1
                  Hỏi từ khi TR0 =1 đến TF0 =1 thì bao lâu????

                  Comment


                  • #10
                    Bài thứ 3:
                    Tốc độ baud = Tốc độc tràn của Timer 1 ÷ 32.
                    Muốn làm việc ở tốc độc baud là 600 baud, thì tốc độ tràn của Timer1 phải là :
                    600 × 32 = 19,2 KHz.
                    Nếu dùng thạch anh 12 MHz, Timer 1 cần cấp xung nhịp 1 MHz hay 1000 KHz. Vì tốc độ tràn Timer 1 là 19,2 KHz và timer được cấp xung nhịp là 1000 KHz, thì cờ tràn sau 1000 ÷ 19,2 = 52,08 xung nhịp (làm tròn là 52. Vì timer đếm lên và tràn xảy ra ở xung nhịp từ FFH xuống 00H ở số đếm. Như vậy giá trị gần đúng nạo vài TH1 là –52. Caùch dễ nhất để nạp giá trị nạp lại ở TH1 là:
                    MOV TH1, # –52

                    p/s: 0 biết đúng 0 nữa, có gì sai mong các bro chém nhẹ tay

                    Comment

                    Về tác giả

                    Collapse

                    chienpv Tìm hiểu thêm về chienpv

                    Bài viết mới nhất

                    Collapse

                    Đang tải...
                    X