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 Hỏi cách điều chế xungbởi thetungBạn cho qua cái Tờ ri gơ Sờ mít ấy ......
-
Channel: Kỹ thuật điện tử tương tự
16-12-2024, 11:26 -
-
Trả lời cho Hỏi cách điều chế xungbởi nguyendinhvanCó gì mà khó ?
Răn cưa vuông đây
...-
Channel: Kỹ thuật điện tử tương tự
15-12-2024, 23:36 -
-
Trả lời cho hỏi về tụ điệnbởi ndp62Chữ " VENT" không phải là tên hãng sx tụ đâu ,vó thế là 1 ký hiệu liên quan tụ lowesr ?
-
Channel: Điện thanh
15-12-2024, 18:24 -
-
Trả lời cho Thắc mắc về nguồn tổ ong 12vbởi bqvietTrừ trường hợp công suất (rất) thấp, hầu như tất cả các loại nguồn xung thông thường đều có tụ nhỏ 1 - 10nF nối giữa sơ cấp và thứ cấp, để thoát nhiễu và để chống hiện tượng tương tự tĩnh điện. Vụ này đã thảo luận vài...
-
Channel: Điện tử dành cho người mới bắt đầu
14-12-2024, 22:02 -
-
Trả lời cho Thắc mắc về nguồn tổ ong 12vbởi namlangnhoE thử 3 cái nguồn nó đều giống nhau. Nên e làm tiếp địa luôn.
-
Channel: Điện tử dành cho người mới bắt đầu
14-12-2024, 19:58 -
-
Trả lời cho Thắc mắc về nguồn tổ ong 12vbởi mèomướpDạ chú sắm con át chống giật và thay nguồn tổ ong khác cho an toàn ạ. Đa phần nguồn xung đều xả nhiễu của bên thứ cấp về điện lưới qua 1 con tụ nên cảm giác tê sẽ khó xác định rõ ràng là do rò điện hay là nó vốn vậy...
-
Channel: Điện tử dành cho người mới bắt đầu
14-12-2024, 18:51 -
-
bởi namlangnhoXin chào mọi người. E có sử dụng 1 cục nguồn tổ ong 12v-30A chạy đèn led xe trà sữa. Mà thợ thi công bị rò điện nên điện rò ra khung xe. E dùng đồng hồ đo điện ở khung xe và cả output thì thấy có dòng điện xoay chiều hơn 100v. Nên chạm...
-
Channel: Điện tử dành cho người mới bắt đầu
14-12-2024, 00:12 -
-
bởi Manh.n.trCác bác cho em hỏi cách điều chế xung răng cưa sang xung vuông với ạ. Em đang thấy khó ạ...
-
Channel: Kỹ thuật điện tử tương tự
13-12-2024, 20:46 -
-
Trả lời cho hỏi về thiết kế mạch tuần tự trên proteusbởi Hatruong1309
-
Channel: Hỗ trợ học tập
12-12-2024, 00:33 -
-
bởi Hatruong1309Cho e hỏi là phần chân X thì nối cái j thì mạch mới chạy được ạ và kiểm tra đúng sai kiểu j ạ
Đề bài thiết kế mạch dãy đồng bộ nhận biết dãy tín hiệu vào ở dạng nhị phân được đưa liên tiếp ở đầu vào X và được đồng...-
Channel: Hỗ trợ học tập
12-12-2024, 00:33 -
Comment