Tải bản đầy đủ (.doc) (92 trang)

Mạch đo tốc độ động cơ và giá cước taxi

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.46 MB, 92 trang )

Đồ n Tốt Nghiệp
Cơ Và Tính Cước Taxi

Mạch Đo Tốc Độ Động

Chương 1:Giới Thiệu Về Taxi
1.1/Một số hình ảnh về đồng hồ taxi:

GVHD:Nguyễn Hữu Phước
-1SVTH:Văn Bình_Quang Vũ


Đồ n Tốt Nghiệp
Cơ Và Tính Cước Taxi

Mạch Đo Tốc Độ Động

1.2 – Giới thiệu sơ lược về taxi

Cùng với sự phát triển của xã hội, nhu cầu vật
chất và tinh thần của con người ngày càng tăng. Nắm
bắt được điều trên, trong vài năm gần đây để thỏa
mãn nhu cầu đi lại ngày càng cao để giải quyết một
số vấn đề xã hội như giảm bớt lượng xe hai bánh trên
đường phố, tăng vẻ mỹ quan cho đô thò. Nhà nước đã
đưa vào hoạt động loại hình Taxi. Đây là loại hình đưa đón
khách tương đối mới mẽ đối với nước ta nhưng lại
không xa lạ gì đối với các nước. Nó tỏ ra tiện dụng cho
việc đi lại và phần nào giảm bớt được ô nhiễm môi
trường, an toàn cho hành khách. Muốn như vậy, xe Taxi
lưu hành phải trang bò những thiết bò an toàn cho hành


khách lẫn người điều khiễn phương tiện. Ngoài những
thiết bò như dây an toàn, thiết bò giảm xóc và chống va
đập… thì việc trang bò những thiết bò cảnh báo nhằm
cung cấp thông tin về tình trạng hoạt động của xe cho
người điều khiển là điều cần thiết.
Bên cạnh vấn đề quan trọng là bảo đảm an toàn
trong quá trình di chuyển thì việc tính cước trên xe Taxi
phải đảm bảo tính chính xác và hợp lý nhằm tạo tâm
thoải mái và dễ chòu cho hành khách.Xuất phát từ nhu
cầu thực tế khách quan đó, cùng những kiến thức đã
được trang bò trong trường, người thực hiện đã mạnh dạn
thực hiện đề tài “THIẾT KẾ VÀ THI CÔNG MẠCH
ĐỒNG HỒ ĐO TỐC ĐỘ VÀ TÍNH CƯỚC XE TAXI”
1.3- GIỚI HẠN ĐỀ TÀI:
Với đề tài mang tính thực tiễn là “THIẾT KẾ VÀ
THI CÔNG MẠCH ĐỒNG HỒ ĐO TỐC ĐỘ VÀ TÍNH
CƯỚC XE TAXI” thì vấn đề thực hiện thiết kế và thi
công một mạch hoàn chỉnh thật sự có thể ứng dụng
rộng rãi là một điều mà người thực hiện mong muốn
đạt được.
Tuy nhiên do thời gian và kiến thức có hạn cùng
những hạn chế khách quan khác ngoài ý muốn mà
trong phạm vi đồ án nhóm chúng em không thể đề
cập, đi sâu khảo sát bộ tính cước xe Taxi đang được sử
dụng rộng rãi trên các xe Taxi ở nước ta. Dù vậy nhóm
chúng em cũng đã cố gắng tìm hiểu các nguyên lý
GVHD:Nguyễn Hữu Phước
-2SVTH:Văn Bình_Quang Vũ



Đồ n Tốt Nghiệp
Cơ Và Tính Cước Taxi

Mạch Đo Tốc Độ Động

tính cước cũng như tốc độ xe ôtô để đề ra hướng giải
quyết. Theo đó nội dung nghiên cứu chỉ tiến hành thực
hiện các vấn đề sau:
• Giới thiệu nguyên lý đo tốc độ, nguyên lý tính
cước xe Taxi., quãng đường xe taxi
_Về thi công, với yêu cầu của đề tài đặt ra là
thiết kế và thi công một mạch điện gần sát với thực
tế để phục vụ cho việc học tập và nghiên cứu. Trên cơ
sở dựa trên khả năng kiến thức đã thu thập ở nhà
trường, nhóm chúng em đã cố gắng tiến hành thi công
một số mạch cơ bản đủ để mô phỏng đo tốc độ và
tính cước xe Taxi.
1.4-MỤC ĐÍCH NGHIÊN CỨU
Đề tài được thực hiện trong phạm vi hẹp chưa thể
ứng dụng được trong thực tiễn nhưng điều mà nhóm
chúng em thực hiện muốn hướng đến là thông qua
việc thực hiện đồ án tốt nghiệp có điều kiện vận
dụng lý thuyết đã học để giải quyết một vấn đề mang
tính thực tiễn
1.5/-THỂ THỨC NGHIÊN CỨU:
1- Thời gian nghiên cứu:
Quá trình nghiên cứu một đề tài được xem là một quy
trình công nghệ hẳn hoi vì nó đòi hỏi phải tiến hành
theo các khâu kế tiếp nhau bao gồm việc chọn đề tài,
biên soạn đề cương, thu thập dữ kiện, xử lý dữ kiện,

viết công trình nghiên cứu.
Đồ án tốt nghiệp được tiến hành thực hiện trong
khoảng thời gian là 6 tuần:
Tuần 1
: Chọn đề tài, chính xác hóa đề tài, soạn
đề cương.
Tuần 2
: Thu thập dữ kiện và tài liệu liên hệ.
Tuần 3 – 5
: Viết lý thuyết và thi công
• Tuần 6
: Hoàn tất và nộp đồ án
• Phương pháp thu thập dữ kiện:
Đây là giai đoạn quan trọng, sử dụng các phương
pháp và phương tiện nghiên cứu để thu thập các dữ
kiện về đề tài đã được xác đònh. Dữ kiện thu thập
được sẽ là chất liệu để hình thành công trình nghiên
cứu khoa học. Vấn đề là làm sao thu thập được dữ kiện
GVHD:Nguyễn Hữu Phước
-3SVTH:Văn Bình_Quang Vũ


Đồ n Tốt Nghiệp
Cơ Và Tính Cước Taxi

Mạch Đo Tốc Độ Động

đầy đủ, chính xác, và phù hợp với nội dung nghiên
cứu.
Trong phạm vi tập đồ án này nhóm chúng em sử

dụng các phương pháp tham khảo tài liệu và thực
nghiệm để thu thập dữ kiện giải quyết đề tài. Việc
tham khảo tài liệu giúp cho nhóm chúng em bổ sung
thêm kiến thức, lý luận cũng như phương pháp mà
những công trình nghiên cứu trước đó đã xây dựng.
Nhờ đó nhóm chúng em tập trung năng lực vào việc
giải quyết các vấn đề còn tồn tại. Tuy nhiên việc
nghiên cứu tham khảo tài liệu luôn bảo đảm tính kế
thừa và phát triển có chọn lọc.
• Xử lý dữ kiện:
Các dữ kiện sau khi được thu thập chưa thể sử dụng
được ngay mà phải qua quá trình sàng lọc, sửa chữa,
phân tích khái quát hóa thành lý luận. Tài liệu được
nhóm thực hiện sử dụng là những tài liệu có chất
lượng cao chủ yếu là tài liệu gốc nên bảo đảm chính
xác về nội dung đề cập.

Chương II/Dẫn Nhập Đề Tài
2.1 ĐẶT VẤN ĐỀ:
Hiện nay đất nước chúng ta đang trong tiến trình cơng nghiệp hóahiện đại hóa đất nước. Trong sản xuất cơng nghiệp tự động hóa
đóng một vai trò khơng nhỏ trong sản xuất. Việc sử dụng vi điều
khiển để điều khiển có rất nhiều ưu điểm như tiềt kiệm giá thành, dễ
lập trình…
Đồ án tốt nghiệp này đề cập đến vấn đề đo tốc độ động cơ và
tính giá cước xe taxi
2.2 NỘI DUNG ĐỀ TÀI:
Với khoảng thời gian thực hiện đề tài 6 tuần, nhóm đã thảo luận và
chọn nội dung của đề tài như sau:
- Nghiên cứu và tìm phương án điều khiển và xử lý dữ liệu cho mạch đo
tốc độ động cơ và tính cước taxi

- Thi cơng mạch.
- Viết chương trình, nap, chạy thử, điều chỉnh mạch.
2.3 MỤC ĐÍCH ĐỀ TÀI:
GVHD:Nguyễn Hữu Phước
-4SVTH:Văn Bình_Quang Vũ


Đồ n Tốt Nghiệp
Cơ Và Tính Cước Taxi

Mạch Đo Tốc Độ Động

Trong q trình nghiên cứu và thực hiện đề tài này nhằm giúp người học:
- Tăng khả năng tự nghiên cứu cũng như tự học.
- Bước đầu tiếp xúc với thực tế .
- Vận dụng những kiến thức đã có đồng thời tìm tòi những kiến thức
mới để hiểu sâu sắc hơn trong lĩnh vực này. Để thiết kế được một
mạch điều khiển như đã nêu ở trên thì người nghiên cứu phải nắm
vững kiến thức chun ngành điện tử, tìm hiểu, nghiên cứu qua
sách vở, tài liệu nước ngồi và dạng mạch thực tế để thi cơng phần
cứng.
2.4 ĐỐI TƯỢNG NGHIÊN CỨU:
- Các phương án điều khiển và xử lý dữ liệu cho bảng led 7 đoạn
- Tìm hiểu vi điều khiển PIC 16F877A.
- Tìm hiểu phương pháp lập trình C.
2.5 LẬP KẾ HOẠCH NGHIÊN CỨU:
-Để thực hiện đề tài này nhóm sinh viên đã kết hợp sử dụng nhiều
phương pháp và phương tiện hỗ trợ gồm có:
- Tham khảo tài liệu: kỹ thuật xung số, điện tử căn bản, vi điều
khiển….

- Quan sát.
- Thực nghiệm.
- Tổng kết kinh nghiệm.
- Phương tiện: máy vi tính, Internet, thư viện…..

2.6I-NGUYÊN LÝ ĐO TỐC ĐỘ XE ÔTÔ
1- Mở đầu:
Trong vài năm gần đây, các thiết bò đo bằng cơ khí
và đèn báo chỉ có ý nghóa mang đến những thông tin
cần thiết hổ trợ cho người lái xe. Việc đưa những bộ xử
lý bằng điện tử vào ứng dụng trong các xe hơi đời mới
đã góp phần thúc đẩy nền công nghiệp ô tô phát
triển mạnh theo hướng tiện nghi và dễ sử dụng đồng
thời đảm bảo an toàn nhất cho người lái xe về tình
trạng hoạt động của xe với các yếu tố ngoại cảnh.
Nhưng dù là thiết bò chỉ báo bằng cơ hay bằng điện thì
những thiết bò này vẫn được xây dựng nên bởi ba yếu
tố chính là: đầu vào, bộ xử lý và đầu ra. Chẳng hạn
như khi kiểm soát hoạt động của xe thì một bộ phận vi
GVHD:Nguyễn Hữu Phước
-5SVTH:Văn Bình_Quang Vũ


Đồ n Tốt Nghiệp
Cơ Và Tính Cước Taxi

Mạch Đo Tốc Độ Động

xử lý của máy Engine ECU (Electronic Control Unit) sẽ xử
lý những tín hiệu nhận từ những bộ cảm biến (sensors)

rồi đưa đến bộ phận chỉ báo.
Nguyên lý đo tốc độ xe ôtô:
Ở xe ôtô đời cũ, tốc độ xe ôtô được xác đònh
bằng bộ cơ khí: dùng một bánh vít trục vít gắn tại hộp
số và thông qua dây công-tơ-mét dẫn động kim đồng
hồ đo tốc độ quay. Đây là phương pháp cổ điển, đơn
giản, hiệu quả về kỹ thuật tuy nhiên hạn chế bởi độ
bền cơ và chưa đạt độ chính xác cao.
Hiện nay, các xe ôtô đời mới không dùng kiểu đo
tốc độ bằng cơ khí nữa mà dúng hệ thống xử lý tín
hiệu điện lấy từ cảm biến tốc độ (Speed sensor) đặt ở
trục thứ cấp của hộp số đưa về xử lý rồi đưa đến
đồng hồ chỉ báo tốc độ. Sở dó xu hướng chuyển sang
phương pháp mới này là do yêu cầu khách quan ề điện
tử hóa các bộ phận điều khiển thiết bò hổ trợ trên
xe. Phương pháp này tỏ ra chính xác và gọn nhẹ đồng
thời thể hiện khả năng mềm dẻo linh hoạt trong xử lý
và hỗ trợ tích cực cho các thiết bò liên quan.
* Có hai bộ đo tốc độ thường dùng:
a- Bộ cảm biến này bao gồm: IC lai HIC (Hybrid
Integrated Circuit) được lắp trên MRE và một xuyến từ
(Magnetic Ring). Toàn bộ cảm biến được lắp đặt ở
hộp số và được dẫn động bởi bánh răng của trục
thứ cấp.
- Hoạt động:
Khi trục số quay truyền động cho trục gắn xuyến từ
quay theo tạo ra một từ thông biến thiên liên tục. Kết
quả là tạo nên một tín hiệu xoay chiều liên tục khi ra
khỏi MRE. Tín hiệu xoay chiều này qua bộ so sánh
(Comparator) trong bộ cảm biến tốc độ sẽ chuyển đổi

dạng sóng xoay chiều ra tín hiệu số. Tín hiệu này sau đó
được chuyển đổi bởi một transistor trớc khi gởi đến bộ
liên kết đo (Combination meter).

GVHD:Nguyễn Hữu Phước
-6SVTH:Văn Bình_Quang Vũ


Đồ n Tốt Nghiệp
Cơ Và Tính Cước Taxi

-

Mạch Đo Tốc Độ Động

Tần số của sóng sin được cho tùy theo số cực của
nam châm gắn trên xuyến từ. Có hai loại xuyến
từ (phụ thuộc vào đời của xe ôtô):
Loại có 20 cực tư øsẽ cho ra 20 chu kỳ sóng sin (ứng
với mỗi vòng quay của xuyến từ). Trong trường hợp
này tần số của tín hiệu được chuyển đổi từ 20 xung
cho mỗi vòng quay của xuyến từ thành 4 xung sau khi
qua bộ liên kết đo (Combination Meter). Sau đó tín hiệu
sẽ được gởi đến bộ xử lý của máy Engine ECU để
xử lý sau cùng đưa đến đồng hồ chỉ thò.

2.7 Nguyên lý tính cước xe Taxi:
Trên thực tế bộ tính cước xe Taxi đang lưu hành hiện nay
là được nhập ngoại hoàn toàn và nhìn chung nó đáp
ứng được các yêu cầu về kinh tế – kỹ thuật, đảm bảo

tính chính xác quãng đường và số tiền hành khách trả
cho đoạn đường di chuyển.
* Việc tính cước được thực hiện như sau:
- Tín hiệu phục vụ cho việc tính cước là tín hiệu tốc độ
lấy từ đồng hồ công-tơ-mét của xe.
- Một bộ xử lý tín hiệu sẽ đếm số xung qui đổi ra tại
bánh xe để tính ra quãng đường.
Số xung tại bánh xe = k (số xung tại hộp số)
- Từ quãng đường đã có thực hiện phép nhân với số
tiền qui đònh cho 1 km đầu và các km tiếp theo sẽ cho
ta tổng số tiền/cuộc chạy.
GVHD:Nguyễn Hữu Phước
-7SVTH:Văn Bình_Quang Vũ


Đồ n Tốt Nghiệp
Cơ Và Tính Cước Taxi

Mạch Đo Tốc Độ Động

Khảo sát mô hình bộ tính cước thực tế được trang bò
cho 1 loại xe Taxi đang lưu hành.
_Báo số km chạy không có khách
1 Km đầu
: 7000 ĐVN.
1km tiếp theo : 5000ĐVN
-

2.8 Cảnh báo tốc độ xe ôtô:
Vấn đề an toàn giao thông, bảo đảm tính mạng cho

người và xe là vấn đề cần được chú trọng và đặt lên
hàng đầu. Thiết bò cảnh báo tốc độ đã được các
hãng ôtô lắp đặt và lưu hành rộng rãi ở các nước
nhưng ở nước ta lại ít được quan tâm sử dụng mặc dù
nó góp phần quan trọng trong việc cảnh báo cho người
điều khiển phương tiện biết đang di chuyển ở tốc độ cao
mà có hướng kiểm soát lại tốc độ nhằm đảm bảo an
toàn giao thông.
* Việc cảnh báo được thực hiện như sau:
- Tín hiệu tốc độ được đưa về bộ so sánh so sánh
với tốc độ cài đặt.
- Khi đến tốc độ cài đặt thì tín hiệu được đưa đến
mở tín hiệu dao động ở tần số quy đònh rồi xuất
ra bộ khuếch đại tín hiệu và loa cảnh báo.
Theo đó, giả sử ta qui đònh cài đặt các cấp cảnh báo
như sau:
*V ≥ 100km/h

2KHz(tần số cảnh báo)

GVHD:Nguyễn Hữu Phước
-8SVTH:Văn Bình_Quang Vũ


Đồ n Tốt Nghiệp
Cơ Và Tính Cước Taxi

Mạch Đo Tốc Độ Động

Chương 3:Giới thiệu về PIC 16f877a

Đây là vi điều khiển thuộc họ PIC16Fxxx với tập lệnh
gồm 35 lệnh có độ dài 14 bit. Mỗi lệnh đều được thực
thi trong một chu kì xung clock. Tốc độ hoạt động tối đa
cho phép là 20 MHz với một chu kì lệnh là 200ns. Bộ
nhớ chương trình 8Kx14 bit, bộ nhớ dữ liệu 368x8
byte RAM và bộ nhớ dữ liệu EEPROM với dung lượng
256x8 byte. Số PORT I/O là 5 với 33 pin I/O.
3.1Các đặc tính ngoại vi bao gồm các khối chức
năng sau:
 Timer0: bộ đếm 8 bit với bộ chia tần số 8 bit.
 Timer1: bộ đếm 16 bit với bộ chia tần số, có
thể thực hiện chức năng đếm dựa vào xung clock
ngoại vi ngay khi vi điều khiển hoạt động ở chế
độ sleep.
 Timer2: bộ đếm 8 bit với bộ chia tần số, bộ
postcaler.
Hai bộ Capture/so sánh/điều chế độ rông xung.

GVHD:Nguyễn Hữu Phước
-9SVTH:Văn Bình_Quang Vũ


Đồ n Tốt Nghiệp
Cơ Và Tính Cước Taxi

Mạch Đo Tốc Độ Động

3.2 Sơ đồ chân vi điều khiển PIC

GVHD:Nguyễn Hữu Phước

- 10 SVTH:Văn Bình_Quang Vũ


Đồ n Tốt Nghiệp
Cơ Và Tính Cước Taxi

Mạch Đo Tốc Độ Động

GVHD:Nguyễn Hữu Phước
- 11 SVTH:Văn Bình_Quang Vũ


Đồ n Tốt Nghiệp
Cơ Và Tính Cước Taxi

Mạch Đo Tốc Độ Động

GVHD:Nguyễn Hữu Phước
- 12 SVTH:Văn Bình_Quang Vũ


Đồ n Tốt Nghiệp
Cơ Và Tính Cước Taxi

Mạch Đo Tốc Độ Động

GVHD:Nguyễn Hữu Phước
- 13 SVTH:Văn Bình_Quang Vũ



Đồ n Tốt Nghiệp
Cơ Và Tính Cước Taxi

Mạch Đo Tốc Độ Động

GVHD:Nguyễn Hữu Phước
- 14 SVTH:Văn Bình_Quang Vũ


Đồ n Tốt Nghiệp
Cơ Và Tính Cước Taxi

Mạch Đo Tốc Độ Động

3.3 TỔ CHỨC BỘ NHỚ
Cấu trúc bộ nhớ của vi điều khiển PIC16F877A
bao gồm bộ nhớ chương trình (Program memory) và bộ
nhớ dữ liệu (Data Memory).
3.3.1.BỘ NHỚ CHƯƠNG TRÌNH
Bộ nhớ chương trình của vi
điều khiển
PIC16F877A là bộ nhớ flash, dung
lượng bộ
nhớ 8K word (1 word = 14 bit) và
được phân thành nhiều trang (từ
page0 đến page 3) .Như vậy bộ
nhớ chương trình có khả năng
chứa được 8*1024 = 8192 lệnh (vì
một lệnh sau khi mã hóa sẽ có
dung lượng 1 word (14 bit).Để mã

hóa được đòa chỉ của 8K word
bộ nhớ chương trình, bộ đếm
chương trình có dung lượng 13 bit
(PC<12:0>).Khi vi điều khiển được
reset, bộ đếm chương trình sẽ
chỉ đến đòa chỉ 0000h (Reset
vector). Khi có ngắt xảy ra, bộ
đếm chương trình sẽ chỉ đến đòa chỉ 0004h (Interrupt
vector).Bộ nhớ chương trình không bao gồm:Bộ nhớ
stack và không được đòa chỉ hóa bởi bộ đếm chương
GVHD:Nguyễn Hữu Phước
- 15 SVTH:Văn Bình_Quang Vũ


Đồ n Tốt Nghiệp
Cơ Và Tính Cước Taxi

Mạch Đo Tốc Độ Động

trình. Bộ nhớ stack sẽ được đề cập cụ thể trong phần
sau.

3.3.2 BỘ NHỚ DỮ LIỆU
Bộ nhớ dữ liệu của PIC là bộ nhớ EEPROM được
chia ra làm nhiều bank. Đối với PIC16F877A bộ nhớ dữ
liệu được chia ra làm 4 bank. Mỗi bank có dung lượng 128
byte, bao gồm các thanh ghi có chức năng đặc biệt SFG
(Special Function Register) nằm ở các vùng đòa chỉ thấp
và các thanh ghi mục đích chung GPR (General Purpose
Register) nằm ở vùng đòa chỉ còn lại trong bank. Các

thanh ghi SFR thường xuyên được sử dụng (ví dụ như
thanh ghi STATUS) sẽ được đặt ở tất cà các bank của
bộ nhớ dữ liệu giúp thuận tiện trong quá trình truy
xuất và làm giảm bớt lệnh của chương trình. Sơ đồ
cụ thể của bộ nhớ dữ liệu PIC16F877A như sau:

GVHD:Nguyễn Hữu Phước
- 16 SVTH:Văn Bình_Quang Vũ


Đồ n Tốt Nghiệp
Cơ Và Tính Cước Taxi

Mạch Đo Tốc Độ Động

GVHD:Nguyễn Hữu Phước
- 17 SVTH:Văn Bình_Quang Vũ


Đồ n Tốt Nghiệp
Cơ Và Tính Cước Taxi

Mạch Đo Tốc Độ Động

3.4 Các port của PIC16F87X
* PORTA và thanh ghi TRISA
PORTA có độ rộng 6 bit , là port vào ra hai chiều .Thanh ghi dữ
liệu trực tiếptương ứng là TRISA . Cho tất cảa các bit của TRISA là
1 thì các chân tương ứng ởPORTA là ngõ vào. Cho tất cả các bit
của TRISA là 0 thì các chân tương ứng ở PORTA là ngõ ra .Việc đọc

các thanh ghi của PORTA sẽ đọc trạng thái của những chân ,
ngược lại việc ghi lên nó sẽ ghi qua port chốt . Tất cả những hoạt
động ghi là các hoạt động đọc-điều chỉnh-ghi . Bởi vậy , dữ liệu
được ghi đến port có nghĩa là những chân của port là đọc , giá trị
được chỉnh sửa và được ghi vào port chốt dữ liệu .Chân RA4 được
đa hợp với xung clock ngồi ở ngõ vào của Timer0 thành
chânRA4/T0CKI . Chân RA4/T0CKI là ngõ vào có một Trigger
Schmitt và một ngõ ra códạng thốt mở . Tất cả những chân khác
của PORTA có ngõ vào TTL và có ngõ ra điều khiển CMOS .Những
chân khác của PORTA được đa hợp với ngõ vào tương tự và ngõ
vàotương tự VREF . Hoạt động của mỗi chân được chọn bằng cách
xố hoặc đặt những bit điều khiển trong thanh ghi ADCON1 ( A/D
Control Register1 ).Thanh ghi TRISA điều khiển hướng của những
chân RA , ngay cả khi chúng được sử dụng như ngõ vào tương
tự .Người sử dụng cần phải chắc rằng những bit trong thanh ghi
TRISA ln ln được đặt khi sử dụng chúng như ngõ vào tương
tự .
GVHD:Nguyễn Hữu Phước
- 18 SVTH:Văn Bình_Quang Vũ


Đồ n Tốt Nghiệp
Cơ Và Tính Cước Taxi

Mạch Đo Tốc Độ Động

* PORTB và thanh ghi TRISB
PORTB có độ rộng 8 bit , là port vào ra hai chiều . Ba chân của
PORTB được đahợp với chức năng lập trình mức điện thế thấp
(Low Voltage Programming ) :RB3/PGM , RB6/PGC và RB7/PGD .

Mỗi chân của PORTB có một điện trở kéo lên yếu ở bên trong .
Một bit điều khiển đơn có thể mở tất cả những điện trở kéo lên
này .Điều này được thực hiện bằng cách xóa bit RBPU
(OPTION_REG<7>) . Những điệntrở kéo lên này sẽ tự động tắt khi
các chân của port được cấu hình như ngõ ra . Các điện trở này bị
cấm khi có một Power-on Reset . Bốn chân của PORTB ,
RB7:RB4 ,có một ngắt để thay đổi đặc tính . Chỉ những chân được
cấu hình như ngõ vào mới có thể gây ra ngắt này . Những chân
vào RB7:RB4 ) được so sánh với giá trị được chốt trước đó trong
lần đọc cuối cùng của PORTB .Các kết quả khơng phù hợp ở ngõ
ra trên chân RB7: RB4 được OR với nhau để phát ra một ngắt Port
Change RB với cờ ngắt là RBIF ( INTCON<0> ) . Ngắt này có thể
đánh thức thiết bị từ trạng thái nghĩ( SLEEP ) . Trong thủ tục phục
vụ ngắt , người sử dụng có thể xóa ngắt theo cách sau
a) Đọc hoặc ghi bất kì lên PORTB . Điều này sẽ kết thúc điều kiện
khơng hòa hợp .
b)XóabitcờRBIF

GVHD:Nguyễn Hữu Phước
- 19 SVTH:Văn Bình_Quang Vũ


Đồ n Tốt Nghiệp
Cơ Và Tính Cước Taxi

Mạch Đo Tốc Độ Động

*PORTC và thanh ghi TRISC
PORTC có độ rộng là 8 bit , là port hai chiều . Thanh ghi dữ liệu
trực tiếp tương ứng là TRISC . Cho tất cả các bit của TRISC là 1 thì

các chân tương ứng ở PORTC là ngõ vào . Cho tất cả các bit của
TRISC là 0 thì các chân tương ứng ở PORTC là ngõ ra . PORTC được
đa hợp với vài chức năng ngoại vi , những chân của PORTC có
đệmTrigger Schmitt ở ngõ vào . Khi bộ I2C được cho phép , chân 3
và 4 của PORTC cóthể được cấu hình với mức I2C bình thường ,
hoặc với mức SMBus bằng cách sử dụng bit CKE (SSPSTAT<6>) .
Khi những chức năng ngoại vi được cho phép , chúng tacần phải
quan tâm đến việc định nghĩa các bit của TRIS cho mỗi chân của
PORTC .Một vài thiết bị ngoại vi ghi đè lên bit TRIS để tạo nên một
chân ở ngõ ra , trong khi những thiết bị ngoại vi khác ghi đè lên
bit TRIS thì sẽ tạo nên một chân ở ngõ vào .Khi những bit TRIS ghi
đè bị tác động trong khi thiết bị ngoại vi được cho phép ,những
lệnh đọc-thay thế-ghi ( BSF , BCF , XORWF ) với TRISC là nơi đến
cần phải được tránh . Người sử dụng cần phải chỉ ra vùng ngoại vi
tương ứng để đảm bảo choviệc đặt TRIS bit là đúng
GVHD:Nguyễn Hữu Phước
- 20 SVTH:Văn Bình_Quang Vũ


Đồ n Tốt Nghiệp
Cơ Và Tính Cước Taxi

Mạch Đo Tốc Độ Động

GVHD:Nguyễn Hữu Phước
- 21 SVTH:Văn Bình_Quang Vũ


Đồ n Tốt Nghiệp
Cơ Và Tính Cước Taxi


Mạch Đo Tốc Độ Động

*PORTD và thanh ghi TRISD
PORTD và TRISD khơng có đối với PIC16F873 hoặc PIC16F876 .
PORTD là port 8 bit với đệm Trigger Schmitt ở ngõ vào . Mỗi chân
có thể được cấu hình riêng lẻ như một ngõ vào hoặc ngõ
ra.PORTD có thể được cấu hình như port của bộ vi xử lýrộng 8 bit
( parallel slave port ) bằng cách đặt bit điều khiển PSPMIDE
( TRISE <4>).
Trong chế độ này , đệm ở ngõ vào là TTL .

PORTE và thanh ghi TRISE
PORTE và TRISE khơng có đối với PIC16F873 hoặc PIC16F876 .
PORTE có ba chân (RE0/RD/AN5 , RE1/WR/AN6 , và RE2/CS/AN7 )
mỗi chân được cấu hình riêng lẻ như những ngõ vào hoặc những
ngõ ra . Những chân này có đệm TriggerSchmitt ở ngõ vào .
Những chân của PORTE đóng vai trò như những ngõ vào điều
khiển vào ra cho port của vi xử lý khi bit PSPMODE ( TRISE <4> )
được set .Trong chế độ này , người sử dụng cần phải chắc rằng
những bit TRISE <2:0> được set , và chắc rằng những chân này
được cấu hình như những ngõ vào số . Cũng bảo đảm
rằngADCON1 được cấu hình cho vào ra số . Trong chế độ này ,
những đệm ở ngõ vào làTTL .Những chân của PORTE được đa hợp
GVHD:Nguyễn Hữu Phước
- 22 SVTH:Văn Bình_Quang Vũ


Đồ n Tốt Nghiệp
Cơ Và Tính Cước Taxi


Mạch Đo Tốc Độ Động

với những ngõ vào tương tự . Khi được chọn cho ngõ vào tương
tự , những chân này sẽ đọc giá trị ‘0’ TRISE điều khiểnhướng của
những chân RE chỉ khi những chân này được sử dụng như những
ngõ vào tương tự . Người sử dụng cần phải giữ những chân được
cấu hình như những ngõ vào khi sử dụng chúng như những ngõ
vào tương tự .

3.3.4 – Bộ nhớ dữ liệu EEPROM và bộ nhớ chương trình
FLASH

Bộ nhớ dữ liệu EEPROM và bộ nhớ chương trình FLASH cho phép
đọc hoặc ghi trong suốt hoạt động bình thường trong phạm vi
VDD . Những thao tác này xảy ra trên một byte đơn cho bộ nhớ
dữ liệu EEPROM và trên một từ đơn cho bộ nhớ chương
trìnhFLASH . Một thao tác ghi gây ra sự xóa rồi ghi , thao tác này
được thực hiện trên mộtbyte hoặc một từ được chỉ định . Sự truy
cập vào bộ nhớ chương trình phải kể đến sự tính tốn
checksum .Ghi một byte hoặc một word sẽ tự động xóa vùng nhớ
và ghi lên giá trị mới ( xóatrước khi ghi ) . Việc ghi vào bộ nhớ dữ
liệu EEPROM khơng ảnh hưởng đến hoạt độngcủa thiết bị . Việc
ghi vào bộ nhớ chương trình sẽ dừng thực thi các lệnh cho đến khi
qtrình ghi hồn thành . Bộ nhớ chương trình khơng thể được
truy cập trong suốt qtrìnhghi. Trong suốt q trình ghi , bộ dao
động tiếp tục chạy , thiết bị ngoại vi vẫn tiếp tục hoạt động và
những sự kiện về ngắt sẽ được phát hiện và đợi cho đến khi q
trình ghi hồn thành . Khi q trình ghi hồn thành , lệnh tiếp
theo trong hàng đợi lệnh sẽ được thực hiện và một rẽ nhánh đến

vectơ ngắt sẽ xảy ra đến ngắt được phép và gây ra trong suốt
q trình ghi .Việc đọc và ghi truy cập đến cả hai bộ nhớ xảy ra
giántiếp thơng qua việc đặt những thanh ghi mục đích chung
( SFR ) . Có sáu thanh ghi mục đích chung được sử dụng là
EEDATA
EEDATH
EEADR
EEADRH
EECON1
EECON2
Bộ nhớ dữ liệu EEPROM cho phép những thao tác đọc và ghi byte
khơng can thiệp đến những thao tác bình thường của bộ vi điều
GVHD:Nguyễn Hữu Phước
- 23 SVTH:Văn Bình_Quang Vũ


Đồ n Tốt Nghiệp
Cơ Và Tính Cước Taxi

Mạch Đo Tốc Độ Động

khiển . Khi có sự trao đổi với bộ nhớ dữ liệu EEPROM , thanh ghi
EEADR giữ địa chỉ sẽ được truy cập .Phụ thuộc vào thao tác
,thanh ghi EEDATA giữ dữ liệu được ghi hoặc được đọc tại địa chỉ
trong thanh ghiEEADR . PIC16F873/874 có 128 byte cho bộ nhớ
dữ liệu EEPROM . PIC16F876/877 có 256 byte cho bộ nhớ dữ liệu
EEPROM và do đó nó sử dụng tất cả 8 bit của EEADR

– Q trình đọc bộ nhớ dữ liệu EEPROM
Q trình đọc bộ nhớ dữ liệu EEPROM chỉ u cầu địa chỉ cần truy

cập phải được ghi vào thanh ghi EEADR và xóa bit EEPGD . Sau
khi bit RD được set , dữ liệu sẽ phải sẵnsàng trong thanh ghi
EEDATA trong chu kỳ lệnh kế tiếp . EEDATA sẽ giữ giá trị nàycho
đến khi thao tác đọc kế tiếp được bắt đầu hoặc cho đến khi nó
được ghi bởi vi chương trình .
Các bước trong q trình đọc bộ nhớ dữ liệu EEPROM là :
1. Ghi địa chỉ cần truy cập vào thanh ghi EEADR và hãy chắc rằng
địa chỉ này thì khơng lớn hơn kích thước bộ nhớ của linh kiện
PIC16F87X .
2. Xóa bit EEPGD để trỏ đến bộ nhớ dữ liệu EEPROM.
3. Set bit RD để bắt đầu thao tác đọc.
4. Đọc dữ liệu từ thanh ghi EEDATA:
Q trình ghi dữ liệu vào bộ nhớ dữ liệu EEPROM được tiến hành
qua vài bước . Cả địa chỉ và giá trị dữ liệu cần phải được ghi vào
những thanh ghi mục đích chung SFR .Bit EEPGD cần phải được
xóa , và bit WREN phải được set để cho phép ghi . Bit WREN phaỉ
bị xóa trong suốt thời gian ngoại trừ trong q trình ghi vào bộ
nhớ dữ liệuEEPROM . Bit WR chỉ có thể được set khi bit WREN đã
được set.

GVHD:Nguyễn Hữu Phước
- 24 SVTH:Văn Bình_Quang Vũ


Đồ n Tốt Nghiệp
Cơ Và Tính Cước Taxi

Mạch Đo Tốc Độ Động

Chương 4:Bộ Hoạt Động Đònh thời

4.1 – Bộ định thời TIMER0
Trong phần này ta sẽ làm bước đầu làm quen với các
Timer của vi điều khiển PIC16F877A và các thao tác cơ
bản đối với các Timer, bao gồm thao tác khởi tạo và
xử lí ngắt. Để cụ thể hơn ta sẽ đi sâu vào ứng dụng
sau:hiển thò các giá trò đã được cập nhật ra LED 7 đoạn
Bộ định thời/bộ đếm Timer0 có các đặc tính sau :
Bộ định thời / bộ đếm 8 bit
Cho phép đọc và ghi
Bộ chia 8 bit lập trình được bằng phần mềm
Chọn xung clock nội hoặc ngoại
Ngắt khi có sự tràn từ FFh đến 00h
Chọn cạnh cho xung clock ngồi
Bên dưới là sơ đồ khối của bộ định thời Timer0 và bộ chia dùng
chung với WDT .
Chế độ định thời (Timer) được chọn bằng cách xóa bit T0CS
( OPTION_REG<5> .Trong chế độ định thời , bộ định thời Timer0
sẽ tăng dần sau mỗi chu kỳ lệnh ( khơng cóbộ chia ) . Nếu thanh
ghi TMR0 được ghi thì sự tăng sẽ bị ngăn lại sau hai chu kỳ
GVHD:Nguyễn Hữu Phước
- 25 SVTH:Văn Bình_Quang Vũ


×