tình hình là các loại pin Ni-xx ở ngoài thi trường đề không ghi đúng dung lượng thực, nên em mún hòi có cách nào nhanh nhât giúp xách định dc dung lượng thực của pin đó hông
Thông báo
Collapse
No announcement yet.
cách xách định dung lượng thực của pin
Collapse
X
-
Bạn tham khảo đoạn code này nếu khó khăn hãy liên hệ :
;chuong trinh test dung luong cua pin AAA
START BIT P3.6 ;pin 6 cua adc
ALE BIT P3.7 ;pin 22 cua adc
RS EQU P3.0
RW EQU P3.1
EN EQU P3.2
ORG 0000h
LJMP MAIN
ORG 000BH
LJMP Giay
MAIN: mov P2,#255
lcall khoi_tao
mov 10h,#0
mov 11h,#0
mov 12h,#0
mov 20h,#0
mov 21h,#0
mov 22h,#0
mov 23h,#0
mov 24h,#0
mov 25h,#0
mov 26h,#0
lcall xoa_lcd
lcall hien_thi_1
Lcall xuong_dong
lcall hien_thi_2
;.......khai bao ngat.......................
MOV IE,#82H
MOV TMOD,#01H
MOV R1,#20
MOV TL0,#LOW(-46000)
MOV TH0,#HIGH(-46000)
SETB TR0
MAIN_1:
jb p1.1,tt
lcall GIO_PHUT_GIAY
tt: lcall doc_adc
mov a,20h
mov b,#100
div ab
add a,#'0'
mov 10h,a
mov a,b
mov b,#10
div ab
add a,#'0'
mov 11h,a
mov a,b
add a,#'0'
mov 12h,a
mov a,#0cAh
lcall ghi_lenh_lcd
lcall delay
mov a,10h
lcall ghi_dulieu
lcall delay
mov a,11h
lcall ghi_dulieu
lcall delay
mov a,12h
lcall ghi_dulieu
lcall delay
mov r3,20h
mov a,r3
cjne a,#11001000b,thoat_1 ;11001000 tuong ung voi dien ap cua pin=2v
dung: lcall xoa_lcd
lcall hien_thi_3
Lcall xuong_dong
lcall hien_thi_4
lcall delay_1
lcall GIO_PHUT_GIAY
clr tr0
lcall delay_1
sjmp dung
thoat_1:ljmp main_1
;........truong trinh ngat..........
Giay: MOV TL0,#LOW(-46000)
MOV TH0,#high(-46000)
DJNZ R1,exit
MOV R1,#20
CPL P1.0
INC 21H
MOV A,21H
CJNE A,#10,exit
MOV 21H,#0
INC 22H
MOV A,22H
CJNE A,#6,exit ;60 giay
MOV 22H,#0
INC 23H
MOV A,23H
CJNE A,#10,exit
MOV 23H,#0
INC 24H
MOV A,24H
CJNE A,#6,exit ;60 phut
MOV 24H,#0
INC 25H
MOV A,25H
CJNE A,#10,exit
MOV 25H,#0
INC 26H
MOV A,26H
CJNE A,#9,exit ;90 Gio
MOV 26H,#0
exit: reti
;.....doan ch/tr hien thi so gio test.....
GIO_PHUT_GIAY:
lcall xoa_lcd
lcall hien_thi_5
Lcall xuong_dong
lcall vitri_lcd_1
mov a,26h
add a,#'0'
lcall GHI_DULIEU
mov a,25h
add a,#'0'
lcall GHI_DULIEU
mov a,#'H'
lcall GHI_DULIEU
MOV A,#' '
lcall GHI_DULIEU
mov a,24h
add a,#'0'
lcall GHI_DULIEU
mov a,23h
add a,#'0'
lcall GHI_DULIEU
mov a,#'M'
lcall GHI_DULIEU
MOV A,#' '
lcall GHI_DULIEU
mov a,22h
add a,#'0'
lcall GHI_DULIEU
mov a,21h
add a,#'0'
lcall GHI_DULIEU
mov a,#'S'
lcall GHI_DULIEU
MOV A,#' '
lcall GHI_DULIEU
lcall delay_1
lcall xoa_lcd
lcall hien_thi_1
Lcall xuong_dong
lcall hien_thi_2
RET
;..................................
vitri_lcd_1:
mov a,#0c2h
lcall GHI_LENH_LCD
ret
;................................................. ............
khoi_tao:
MOV A,#01H ;xoa man hinh
LCALL GHI_LENH_LCD
MOV A,#38H
LCALL GHI_LENH_LCD
MOV A,#0CH
LCALL GHI_LENH_LCD
MOV A,#06H ;bat hien thi
LCALL GHI_LENH_LCD
MOV A,#0EH
LCALL GHI_LENH_LCD
ret
hien_thi_1:
MOV R0,#0
TT_1: MOV A,R0
MOV DPTR,#MYDATA_1
movc a,@a+dptr
LCALL GHI_DULIEU
INC R0
CJNE R0,#16,TT_1
RET
hien_thi_2:
MOV R0,#0
TT_2: MOV A,R0
MOV DPTR,#MYDATA_2
movc a,@a+dptr
LCALL GHI_DULIEU
INC R0
CJNE R0,#16,TT_2
RET
hien_thi_3:
MOV R0,#0
TT_3: MOV A,R0
MOV DPTR,#MYDATA_3
movc a,@a+dptr
LCALL GHI_DULIEU
INC R0
CJNE R0,#16,TT_3
RET
hien_thi_4:
MOV R0,#0
TT_4: MOV A,R0
MOV DPTR,#MYDATA_4
movc a,@a+dptr
LCALL GHI_DULIEU
INC R0
CJNE R0,#16,TT_4
RET
hien_thi_5:
MOV R0,#0
TT_5: MOV A,R0
MOV DPTR,#MYDATA_5
movc a,@a+dptr
LCALL GHI_DULIEU
INC R0
CJNE R0,#16,TT_5
RET
DOC_ADC:
SETB ALE
NOP
NOP
SETB START
LCALL DL1MSS
CLR ALE
CLR START
LCALL DL1MSS
mov 20h,p2 ;luu vao o nho 20h
RET
GHI_LENH_LCD:
;DOC CO BAN
MOV P0,A ;dua ra port 0
CLR RS ;LENH
CLR RW ;=0 GHI
SETB EN
CLR EN
LCALL READY ;DOC CO BAN
RET
GHI_DULIEU: ;data strobe
MOV P0,A
SETB RS ;DU LIEU
CLR RW ;R/W=0 to write to LCD
SETB EN
CLR EN
LCALL READY ;kiem tra co ban
RET
;kiem tra co ban
DAU_DONG:
MOV A,#80H
MOV P0,A
clr RS
CLR RW ;R/W=0 to write to LCD
SETB EN
CLR EN
lCALL READY ;kiem tra co ban
RET
XUONG_DONG:
MOV A,#0C0H
MOV P0,A
clr RS
CLR RW ;R/W=0 to write to LCD
SETB EN
CLR EN
LCALL READY ;kiem tra co ban
RET
xoa_lcd:
mov a,#1h
MOV P0,A
clr RS
CLR RW ;R/W=0 to write to LCD
SETB EN
CLR EN
LCALL READY ;kiem tra co ban
RET
READY: SETB P0.7 ;P0.7: input
CLR RS ;RS=0: thanh ghi le^.nh
SETB RW ;R/W=1: ddo.c
BACK:
CLR EN ;E=0 -> ta.o ca.nh le^n
SETB EN ;E=1
JB P0.7,BACK ;cho co ban =0
RET
dl1msS: mov r7,#250 ;250
MOV R6,#3
loop1msS:djnz r7,$
MOV R7,#250
DJNZ R6,LOOP1MSS
ret
delay:
MOV R6,#255
DL1: MOV R7,#255
DL2: DJNZ R7,DL2
DJNZ R6,DL1
RET
delay_1:
mov r5,#40
ql_1: MOV R6,#255
DL3: MOV R7,#255
DL4: DJNZ R7,DL4
DJNZ R6,DL3
djnz r5,ql_1
RET
;ORG 250H
MYDATA_1:
DB "Testting Pin AAA"
MYDATA_2:
DB "R=155 U> 0mV"
MYDATA_3:
DB "Dien ap:=2000 mV"
MYDATA_4:
DB "Stop Test Pin 3A "
MYDATA_5:
DB " Thoi Gian Test "
end
-
Dung lượng của PIN thường kí hiệu là mAh. Ví dụ pin điện thoại 1600mAh. nếu thiết bị của bạn dùng 20mA thì thời gian sử dụng là 1600/20=80h~3ngày thì sẽ cạn.
Bạn cứ kéo 1 dòng khoảng 100mA. Rồi đo điện áp khi nào Pin cạn thì bạn tính được dung lượng ngay chả phải MCU làm gì cả ( mà MCU làm gì mà chính xác)Hi vọng bài viết giúp X được cho bạn.
Comment
Bài viết mới nhất
Collapse
-
Trả lời cho Xin hỏi về mạch thu FM/AM trong catsettebởi nguyendinhvanTheo tôi, nó chỉ là cái Tuy- ê - nơ, hoặc là khối Trung Văn Tần, nó một phần trong cái Da đì ô thôi. Vì có thấy một chỗ có ba chân hàn, giiống như chân Cờ rít sờ tăng 455 ki nô hẹc. Còn khối Tuy ê nơ thì không nhìn thây cái Di ốt Va di cáp...
-
Channel: Điện thanh
Hôm qua, 19:59 -
-
Trả lời cho Đấu tắt điện cho máy tính bảngbởi afrendlyCó vẻ ngoài hiểu biết của mình rồi. Cuối cùng mình quyết định tìm mua 2 pin trên Shopee, giá 200K thay vào. Tuy nhận pin được 1%, sạc mãi không vào nhưng cũng mở được máy lên. Vậy cũng tạm. Cảm ơn bạn đã hỗ trợ nhé....
-
Channel: Thiết bị điện tử cá nhân
04-12-2025, 01:27 -
-
Trả lời cho Máy điện châm ?bởi nick22Đúng như bạn nói, máy điện châm hiện nay trên thị trường đã khá đa dạng về mẫu mã, chức năng và giá thành.
-
Channel: Điện tử y sinh
01-12-2025, 13:23 -
-
Trả lời cho Làm thế nào để check IC LM358bởi thetungĐể check IC sống hay chết thì đơn giản : bạn lắp cái mạch ( khuếch đại hoặc dao động ) chạy bằng con IC đó ,nhưng vị trí IC thì lắp cái đế .... thế là cứ cắm rút thì biết . Còn không thì kiếm cái này : https://shopee.vn/Xu-M%C3%A1y-ki%E1%...di-%C4%91%E1%B...
-
Channel: Hướng dẫn tìm thông tin linh kiện
28-11-2025, 14:34 -
-
bởi ngochung90Tình hình là em có mua mạch 3s về để hàn vào khối pin 12v, hàn xong em đo tại các chân từ B-, B1, B2, B+ thì điện áp pin vẫn đủ 12,6v, nhưng tại 2 chân ra P- P+ thì đo chỉ được 6,3v là bị sao các bác, và chân P- P + này đồng thời là chân sạc xả thì mình cắm sạc xả cùng lúc được ko ạ
...-
Channel: Điện tử dành cho người mới bắt đầu
28-11-2025, 10:32 -
-
Trả lời cho Làm thế nào để check IC LM358bởi nguyendinhvanViệc đó tùy thuộc trình độ khoa học kỹ thuật công nghệ ứng dụng hiện tại thôi.
Trong datasheet,họ đưa ra nhiều thông số. Tùy theo khả năng , và những thông số họ cần, họ sẽ kiểm tra casc số đo có khớp với số liệu trong datasheet...-
Channel: Hướng dẫn tìm thông tin linh kiện
27-11-2025, 18:00 -
-
bởi kqbn9091Em có mạch AT89s8253 đang cần sửa số serial no của CHIP mà giờ lâu quá rồi không dùng keil nên không biết phải làm sao, trong khi chỉ còn file hex. Mạch nạp thì progris khi viết không sửa được số serial của IC. Rất cần bác nào còn làm về 89...
-
Channel: Vi điều khiển họ 8051
27-11-2025, 11:13 -

Comment