Professional Documents
Culture Documents
Report Peoject II
Report Peoject II
Mc Lc:
Mc Lc: ............................................................................................................................................... 1
A.Li Ni u. ...................................................................................................................................... 3
B.Ni Dung............................................................................................................................................ 4
Phn 1: M T Ti. ...................................................................................................................... 4
1.
2.
Yu Cu Ca Ti............................................................................................................ 4
2.
3.
2.
3.
Nhm 1
Page 1
Bo co project 2
Nhm 1
Page 2
Bo co project 2
A.Li Ni u.
gip sinh vin hc tp, trau di thm kin thc v thit k phn cng v tip cn
su hn vi vi iu khin th Vin in T Vin Thng trng H.Bch Khoa H
Ni t chc mn hc Project 2. Trong mn hc Project 2 ny nhm em c
phn cng di s hng dn ca thy ThS.Nguyn Tin Dng. Nh c s ch bo
hng dn c th ca thy ln nhm em hon thnh c Project 2.
Trong qu trnh thc hin Project 2 c s hng dn ch bo tn tnh ca thy
ThS.Nguyn Tin Dng cng anh hng dn Nguyn Quang Tun Anh, chng em
hc tp v trau di cho bn thn nhiu kin thc mi l, b ch, bit cch tip cn mt
vn v a ra tng gii quyt vn . Qua rn luyn cho mnh phm cht
ca nhng k s trong tng lai.
Mc d nhn c s gip , ch bo, tn tnh t pha cc thy nhng do bc u
lm quen vi loi vi iu khin mi ln chng em cng gp phi mt vi kh khn
khi tip cn nhng cng nhanh chng tm hiu v lm ch c n.
Cui cng chng em xin c gi li cm n ti thy ThS.Nguyn Tin Dng v
anh Nguyn Quang Tun Anh hng dn chng em hon thnh Project 2.
Chng em xin chn thnh cm n!
Nhm 1
Page 3
Bo co project 2
B.Ni Dung.
Phn 1: M T Ti.
2. Yu Cu Ca Ti.
Mch OBU thu tn hiu tr ph.
Mch pht tn hiu tr ph t ti cng thu ph.
Hin th thng tin ty chn.
Khng pht trng lp tn hiu ti nhiu OBU.
Truyn thng tc ti 20km/h.
Nhm 1
Page 4
Bo co project 2
1. Vi iu Khin MSP430G2553.
Hnh 2: MSP430G2553
Page 5
Bo co project 2
-250 A/ MIPS.
+ B tng t hiu sut cao cho cc php o chnh xc
-12 bit hoc 10 bit ADC-200 kskp, cm bin nhit , Vref ,
-12 bit DAC.
-B gim st in p ngun.
+ 16 bit RISC CPU cho php c nhiu ng dng, th hin mt phn kch
thc Code lp trnh.
-Thanh ghi ln nn loi tr c trng hp tt nghn tp tin khi ang lm vic.
-Thit k nh gn lm gim lng tiu th in v gim gi thnh.
-Ti u ha cho nhng chng trnh ngn ng bc cao nh C, C++
-C 7 ch nh a ch.
-Kh nng ngt theo vc t ln.
+ Trong lp trnh cho b nh Flash cho php thay i Code mt cch linh hot,
phm vi rng, b nh Flash cn c th lu li nh nht k ca d liu.
S chn :
Page 6
Bo co project 2
Ngoi chc nng I/O th trn mi pin ca cc port u l nhng chn a chc
nng, ta th thy r trong bng sau :
Trn bng l chc nng ca tng chn , ngoi ra i vi cc MCU c kiu chn
SMD loi 28 chn th n c thm port 3 na,nhng y ch xt i vi kiu DIP
Nhm 1
Page 7
Bo co project 2
20 chn v kiu TSSOP 20 chn , kiu cn li cc bn c th tm hiu trn trang
ch ca nh sn xut .
- Chn s 1 l chn cp ngun Vcc( k hiu trn chip l DVcc ) , y ngun cho
chip ch c cp mc 3,3V , nu cp ngun cao qu mc ny th chip c th
hot ng sai hay chy chip .
c c mc ngun ny th ta phi dng 1 IC n p ring c k hiu LM1117
hay AD1117 , IC ny c kiu chn SMD nh gn , cch mc chip ny th cng
ging nh vi nhng IC ngun nh LM78xx , tuy nhin lu y l th t chn
y c hi khc 1 cht.Cc bn c th xem datasheet ca IC m mc cho ph
hp.
-Chn 20 l chn ni cc m (0V) , chn ny th khng c g c bit.
Nhm 1
Page 8
Bo co project 2
Nhm 1
Page 9
Bo co project 2
ni. Nh vy th chng ta khng cn thit phi s dng mch dao ng ngoi cho
chip ging nh nhng dng khc.
- Port I/O :
Port 1 : c 8 chn t P1.0 n P1.7 tng ng vi cc chn t 2-7 v 14 , 15.
Port 2 : cng gm c 8 chn P2.0 P2.7 ng vi cc chn 8 13 , 18,19.
Trong ch nhp (input) th c 2 port u c 1 mch iu khin in tr ko
dng gi l PULL UP nhng gi tr ca in tr ny rt ln khong 47K nn
gi l WEAK PULL UP RESISTAN. Vic iu khin PULL UP s c tin hnh
thng qua lp trnh tc ng ln thanh ghi PxREN s c cp chng sau .
iu ny cng ging nh vic thit lp input port B ca vi iu khin PIC, port
B cng c in tr ko ln , v ngi lp trnh phi thao tc qua thanh ghi
OPTION_REG.
Nhm 1
Page 10
Bo co project 2
2. LCD 16x2.
Nhm 1
Page 11
Bo co project 2
Chn
K Hiu
M T
Vss
VDD
VEE
RS
R/W
Nhm 1
Page 12
Bo co project 2
6
7-14
15
16
GND cho n nn
Nhm 1
Page 13
Bo co project 2
Gii thiu
Thng s k thut
Radio:
-
C 126 knh.
Thu:
-
C b lc nhiu ti u thu.
Nhm 1
Page 14
Bo co project 2
Ngun cp:
-
Giao tip:
-
4 pin SPI.
Tc ti a 8Mbps.
Phn Tch
Modul nRF24L01 hot ng tn s sng ngn 2.4G nn Modul ny kh
nng truyn d liu tc cao v truyn nhn d liu trong iu kin mi
trng c vt cn.
Modul kh nng thay i cng sut pht bng chng trnh, iu ny gip
n c th hot ng trong ch tit kim nng lng.
Nhm 1
Page 15
Bo co project 2
-
Nhm 1
Page 16
Bo co project 2
Nhm 1
Page 17
Bo co project 2
void main(void)
{
unsigned long i = 0;
unsigned char RxBuf[128];
WDTCTL = WDTPW | WDTHOLD;
BCSCTL1 = CALBC1_1MHZ;
DCOCTL = CALDCO_1MHZ;
// Set range
// Set DCO step +
modulation */
P1DIR |= BIT0;
P1OUT &= ~BIT0;
UartInit();
init_NRF24L01();
SetRX_Mode();
while (1)
{
if (nRF24L01_RxPacket(RxBuf) == 1)
{
UartSend(RxBuf, strlen(RxBuf));
SetRX_Mode();
}
Nhm 1
Page 18
Bo co project 2
if (g_u8StartSendFlag == 1)
{
SetTX_Mode();
nRF24L01_TxPacket(g_pUartBuffer);
SPI_RW_Reg(WRITE_REG+STATUS, 0XFF); // Clear Bit Send
g_u8StartSendFlag = 0;
g_u8UartBufferPtr = 0;
LED_TOGGLE;
SetRX_Mode();
}
}
}
Nhm 1
Page 19
Bo co project 2
2. Thit K Mch.
Mch nguyn l module thu tn hiu:
Nhm 1
Page 20
Bo co project 2
Mch in:
Nhm 1
Page 21
Bo co project 2
C.Kt Lun.
Qua nhng ngy tri nghim thc t khi tin hnh thc hin Project 2
ny,chng em hc tp v lm vic thc s, nh nhng kin thc hc hi c
cng s ch bo tn tnh ca cc thy, chng em hiu v lm vng c quy trnh
lm vic to ra mt sn phm, hc c cch lm vic nhm, cch t chc cng
vic hiu qu. c rt c nhng kinh nghim thc t qu bu. T nhng kinh
nghim cng nh nhng bi hc qu bu chng em hc c s gip ch cho
chng em rt nhiu cho cng vic hc tp v nghin cu tip theo ca mnh.
Mt ln na em xin cm n thy Ths.Nguyn Tin Dng to mi iu kin tt
nht cho chng em c th hon thn tt Project 2 ny.
Nhm 1
Page 22
Bo co project 2
D.Ph Lc
1. Code Xy Dng Hm iu Khin Mch Pht.
main.c
#include <msp430.h>
#include "nRF24l01.h"
#include "string.h"
#include "stdio.h"
#include "LCD.h"
#define LED_TOGGLE
P1OUT ^= BIT0
#define UART_BUFFER_MAX
32
void UartInit(void);
void UartSend(unsigned char* pBuff, unsigned char u8Length);
unsigned char g_pUartBuffer[UART_BUFFER_MAX] = { 0 };
unsigned char g_u8UartBufferPtr = 0;
unsigned char g_u8StartSendFlag = 0;
/*
* main.c (Transmitter)
*/
void main(void)
{
unsigned long i = 0;
unsigned char RxBuf[128];
WDTCTL = WDTPW | WDTHOLD;
BCSCTL1 = CALBC1_1MHZ;
DCOCTL = CALDCO_1MHZ;
modulation */
P1DIR |= BIT0;
P1OUT &= ~BIT0;
UartInit();
init_NRF24L01();
SetRX_Mode();
while (1)
{
if (nRF24L01_RxPacket(RxBuf) == 1)
{
UartSend(RxBuf, strlen(RxBuf));
SetRX_Mode();
}
if (g_u8StartSendFlag == 1)
{
SetTX_Mode();
nRF24L01_TxPacket(g_pUartBuffer);
Nhm 1
Page 23
Bo co project 2
SPI_RW_Reg(WRITE_REG+STATUS, 0XFF); // Clear Bit Send
g_u8StartSendFlag = 0;
g_u8UartBufferPtr = 0;
LED_TOGGLE;
SetRX_Mode();
}
}
}
// Uart received handler
#pragma vector=USCIAB0RX_VECTOR
__interrupt void USCI0RX_ISR(void)
{
unsigned char u8Receive;
u8Receive = UCA0RXBUF;
if (u8Receive == '\n')
{
g_u8StartSendFlag = 1;
return;
}
if (g_u8UartBufferPtr < UART_BUFFER_MAX)
{
g_pUartBuffer[g_u8UartBufferPtr++] = u8Receive;
g_pUartBuffer[g_u8UartBufferPtr] = 0;
}
}
void UartInit(void)
{
P1SEL = BIT1 + BIT2 ;
P1SEL2 = BIT1 + BIT2 ;
UCA0CTL1 |= UCSSEL_2;
UCA0BR0 = 104;
UCA0BR1 = 0;
UCA0MCTL = UCBRS0;
UCA0CTL1 &= ~UCSWRST;
machine**
IE2 |= UCA0RXIE;
interrupt
__bis_SR_register(GIE);
//
//
//
//
//
//
//
// Enable USCI_A0 RX
// Enter LPM0, interrupts enabled
}
void UartSend(unsigned char* pBuff, unsigned char u8Length)
{
unsigned char i;
for (i = 0; i < u8Length; i++)
{
while (!(IFG2 & UCA0TXIFG));
buffer ready?
UCA0TXBUF = pBuff[i];
character
}
}
Nhm 1
// USCI_A0 TX
// TX -> RXed
Page 24
Bo co project 2
P1OUT ^= BIT0
#define UART_BUFFER_MAX
32
void UartInit(void);
void UartSend(unsigned char* pBuff, unsigned char u8Length);
/*
* main.c (Receiver)
*/
void main(void)
{
Nhm 1
Page 25
Bo co project 2
unsigned long i = 0;
unsigned char RxBuf[128];
WDTCTL = WDTPW | WDTHOLD; // Stop watchdog timer
BCSCTL1 = CALBC1_1MHZ;
// Set range
DCOCTL = CALDCO_1MHZ;
modulation */
P1DIR |= BIT0;
P1OUT &= ~BIT0;
init_NRF24L01();
SetRX_Mode();
lcd_init(0);
lcd_clear();
while (1)
{
if (nRF24L01_RxPacket(RxBuf) == 1)
{
lcd_gotoxy(0,0);
lcd_puts("ky tu hien thi");
lcd_gotoxy(0,1);
lcd_putc(RxBuf[0]);
lcd_putc(RxBuf[1]);
Nhm 1
Page 26
Bo co project 2
lcd_putc(RxBuf[2]);
SetTX_Mode();
nRF24L01_TxPacket("Received: ");
nRF24L01_TxPacket(RxBuf);
nRF24L01_TxPacket("\n\r");
SPI_RW_Reg(WRITE_REG+STATUS, 0XFF); // Clear Bit
Send
LED_TOGGLE;
SetRX_Mode();
}
}
}
Nhm 1
Page 27