Top 16 # Huong Dan Xay Nha Hall 6 / 2023 Xem Nhiều Nhất, Mới Nhất 12/2022 # Top Trend | Karefresh.com

Xay Nha Hall 9 Clash Of Clan / 2023

Nhà mình là Viet Top clan

đang chuẩn bị lên hall 10,

Việt Nam C48 clash of clans Facebook

… nói về điều này. Hội Việt Nam C48 yêu thích game clash of clans. … sau 1 buổi tối và đã xong hall 9 … đếm từng h chờ từng ngày chỉ còn 10h nữa là nhà hall lên 7 ^^…. Tham khảo cách xây nhà theo level tại: http://clashofclansbuilder.com/

Clash of Clans Việt Nam Facebook

Anh em cho hỏi nhà decorations trong clash of clans công dụng là gì vậy ak. …. Lúc mới lên town hãy upgrade labratory trước, và xây hết những nhà mới có thể… sét của các nhà town hall 9, 10, không nên giật sét cướp dark của nhà TH 8, …

Clash of clan Thái Nguyên Facebook

251 lượt thích · 25 người đang nói về điều này. clash of clan Thái Nguyên nơi tập… Ví dụ, Town hall 7 tấn công một Town hall 9 với nhiều dầu đen: ….. Ae xây nhà bỏ nhà hall vào trong bảo vệ kỹ càng, còn các loại kho gold, elixi, elixi dark bỏ…

Hanoi VN Bro Clash Of Clans Facebook

Bạn vội vã lên town hall 9 khi các loại trụ def chính (mortar- wizard) vẫn chưa max level…… Premature base xuất hiện rất nhiều trong chúng tôi Clash of Clans.… Cụ thể nếu bạn ở town hall level x khi đánh một nhà ở town hall level x-2 sẽ bị trừ….. diễn ra 1 hoạt động ” kinh thiên động địa” từ trước tới nay chưa hề xảy ra.

Chia sẻ kinh nghiệm chơi Clash of Clans Tinhte.vn

3 Tháng Giêng 2013 … [ATTACH] Clash Of Clans là games chiến thuật được rất nhiều người chơi, … Tham khảo cách xây nhà theo level tại: http://clashofclansbuilder.com/ … Tập trung nâng hall, súng trước, không chú trọng xây mấy ụ dào vàng và sản …. co duoc khong vay ban?xin ban chi cho minh chúng tôi cam on nhieu. 9/1/13.

Hướng dẫn chơi game Clash Of Clans (COC) cho người mới chơi

Tải game Clash Of Clans cho điện thoại Android miễn phí

Phiên bản Android của game Clash of Clans được phát hành vào ngày 30 tháng 9 năm 2013 tuy mới được ra mắt nhưng cũng đã được rất nhiều người chơi rất yêu thích và chơi rất nhiều. Tải game Clash Of Clans Thành phần chính trong game: – Town hall: là nhà chính. mỗi lần nâng cấp là được thêm nhiều nhà mới. Lưu ý chỉ cần nhà chính của bạn bị phá coi như bạn thua. – Builder: nông dân xây nhà. – Defense: hệ thống phòng thủ, súng ống, tường thành,…

[Guide] Clash of Clan: Làm thế nào để chiến thắng khi bạn không có …

Và đặc biệt, đến thời điểm hiện tại nhà phát hành SuperCell cuối cùng cũng đã phát hành một bản cập nhật hỗ trợ điều khiển và dịch chuyển trong Clash of Clan dễ dàng hơn, đặc biệt nếu bạn đang chơi trên Iphone chứ … Khi bạn nâng cấp nhà chính (Town Halls), bạn sẽ nhận được nhiều thành tựu cũng như khả năng đột kích của bạn sẽ tốt lên. … Trên bản đồ làng, dọn dẹp các cây gỗ, khối đá, nấm… sẽ giúp bạn có thêm diện tích để xây dựng căn nhà thức ba.

X-bow trong Clash of clan Trà đá vui

Cấp độ nhà chính(Town Hall Level), 1, 2, 3, 4, 5, 6, 7, 8, 9. Số lượng (Number Available), 0, 0, 0, 0, 0, 0, 0, 0, 2 … (Cost to Load ) Elixir trong clash of clan. Chi phí xây dựng (Cost) vàng trong clash of clan. Thời gian xây (Build Time). Kinh nghiệm (Experience Gained) XP clash of clan, kinh nghiệm trong clash of clan. Điều kiện nhà chính (Town Hall Level Required), Màu mũi tên (Shot Color). 1, 50, 6, 1,500, 50,000, 3,000,000, 7d, 777, 9, Purple. 2, 60, 8, 1,900, 60,000 …

1001 PHƯƠNG PHÁP CHƠI CLASH OF CLAN bestgame.vn

Clash Of Clans Guide: Phương pháp chơi clash of clans

Cách xây như thế nào, đánh như thế nào, kết hợp quân như thế nào, làm sao để có nhiều tiền,… Qua đây tôi cũng muốn chia sẽ các phương pháp chơi mà tôi sưu tầm và … Hall lv9: Quân 200+: Bạn sẽ tìm được nhiều điều thú vị ở khoảng cúp 1400-1600. Dễ dàng khai thác nông sản với những nhà cấp thấp hơn. Chú ý rằng, lv của bạn càng cao thì bạn nhìn các nhà lv thấp với lượng nông sản ít đi. – Hall lv8: Quân 200+: Tôi thường sử dụng khoảng cúp 1200-1400.

Chia sẻ kinh nghiệm, chiến thuật trong Clash of Clans

Nó sẽ hỏi và gõ CONFIM để xác nhận Tham khảo cách xây nhà theo level tại: Chi tiết, đặc điểm các loại quân và nhà : Đi cướp luôn luôn là một vấn đề để cho mọi người quan tâm. Tôi vẫn thường nghe mọi người nói và hỏi …

Clash Of Clans Guide: Hệ thống nhà phòng thủ (Defense)

Thời gian xây (Build Time). Kinh nghiệm (Experience Gained) XP. Điều kiện nhà chính (Town Hall Level Required), Màu mũi tên (Shot Color). 1, 50, 6, 1,500, 50,000, 3,000,000, 7d, 777, 9, Purple. 2, 60, 8, 1,900, 60,000 …

Huong Dan Su Dung Eviews 6.0 / 2023

Published on

1. BÀI GIẢNG 2: HƯỚNG DẪN SỬ DỤNG EVIEWS 6.0 ThS Phùng Thanh Bình ptbinh@ueh.edu.vn BÀI GIẢNG 2 HƯỚNG DẪN SỬ DỤNG EVIEWS 6.0MỤC TIÊU BÀI GIẢNG: 1. Eviews là gì? 2. Workfile là gì? 3. Trình bày dữ liệu trong Eviews? 4. Đối tượng trong Eviews 5. Quản lý dữ liệu trong Eviews 6. Các phép toán và hàm số gì trong Eviews 7. Các vấn đề cơ bản về phân tích dữ liệu chuỗi và nhóm 8. Xây dựng hàm kinh tế lượng trong Eviews 9. Kiểm định giả thiết của mô hình hồi qui trong EviewsĐỐI TƯỢNG BÀI GIẢNG: 1. Tài liệu bài giảng cho sinh viên đại học 2. Tài liệu tham khảo ôn tập cho học viên cao học NHỮNG VẤN ĐỀ CƠ BẢN VỀ EVIEWSEVIEWS LÀ GÌ?Eviews1 cung cấp các công cụ phân tích dữ liệu phức tạp,hồi qui và dự báo chạy trên nền Windows. Với Eviews ta cóthể nhanh chóng xây dựng một mối quan hệ thống kê từ dữliệu có sẵn và sử dụng mối quan hệ này để dự báo các giátrị tương lai. Eviews có thể hữu ích trong nhiều lĩnh vựcnhư phân tích và đánh giá dữ liệu khoa học, phân tích tài1 Viết tắt của Econometrics Views 1

2. BÀI GIẢNG 2: HƯỚNG DẪN SỬ DỤNG EVIEWS 6.0 ThS Phùng Thanh Bình ptbinh@ueh.edu.vnchính, dự báo kinh tế vĩ mô, mô phỏng, dự báo doanh số,và phân tích chi phí. Đặc biệt, Eviews là một phần mềmrất mạnh cho các nghiên cứu dữ liệu thời gian và dữ liệuchéo với cỡ mẫu lớn. Eviews đưa ra nhiều cách nhập dữ liệu rất thông dụngvà dễ sử dụng như nhập từ bàn phím, từ các tập tin sẵn códưới dạng Excel hay Text. Với Eviews, chúng ta có thể dễdàng tạo ra các chuỗi mới từ các chuỗi hiện hành, hoặc mởrộng dữ liệu có sẵn. Eviews trình bày các biểu mẫu, đồthị, kết quả ấn tượng và có thể in trực tiếp hoặc chuyểnqua các loại định dạng văn bản khác. Eviews giúp người sửdụng dễ dàng ước lượng và kiểm định các mô hình kinh tếlượng. Ngoài ra, Eviews còn giúp những người nghiên cứuchuyên nghiệp có thể xây dựng các tập tin bài giảng trìnhcho dự án nghiên cứu của mình. Eviews tận dụng các đặcđiểm hiển thị ưu việc của nền Windows hiện đại nên rấtthuận tiện cho tất cả mọi người dễ dàng sử dụng như dùngchuột, các thanh kéo, thay đổi giao diện, thoát, … Nhờ sửdụng loại ngôn ngữ rất gần với các ký hiệu chuẩn củatoán, thống kế, và kinh tế lượng, nên người sử dụng dễdàng suy luận một cách hợp lý khi xây dựng hoặc kiểm địnhcác mô hình hồi qui trên Eviews. Nếu chương trình đượccài đặt thành công, thì khi khởi động Eviews chúng ta sẽthấy xuất hiện một cửa sổ chính như sau:Title bar: Thanh tiêu đề, Main Menu: Trình đơn chính, CommandWindow: Cửa sổ/Màn hình lệnh, Work Area: Vùng làm việc, Status Line:Dòng trạng thái.Nguồn: Eviews 6 Users Guide, pp.10 2

4. BÀI GIẢNG 2: HƯỚNG DẪN SỬ DỤNG EVIEWS 6.0 ThS Phùng Thanh Bình ptbinh@ueh.edu.vn(i) Tạo một tập tin bằng cách mô tả cấu trúcĐể mô tả cấu trúc của tập tin Eviews, ta phải cung cấpcho Eviews cácthông tin về sốquan sát và cácnhận dạng liênquan. Để tạo mộttập tin mới trênEviews, ta chọnFile/New Workfile,… từ thực đơnchính để mở hộpthoại WorkfileCreate. Ở gốc tráicủa hộp thoại làmột hộp nhỏ để môtả cấu trúc cơ bảncủa bộ dữ liệu. Ta có thể chọn giữa Dated-RegularFrequency, Unstructured, và Balanced Panel. Nói chung, tacó thể sử dụng Dated-regular frequency7 nếu ta có bộ dữliệu thời gian, với bộ dữ liệu bảng đơn giản ta sử dụngBalanced Panel, và các trường hợp khác ta sử dụngUnstructured8. Sau khi ta đã xác định loại cấu trúc dữ liệu, Eviewssẽ tự động nhắc ta mô tả đặc điểm của bộ dữ liệu đó nhưtần suất, ngày bắt đầu, ngày kết thúc đối với loại dữliệu thời gian; số quan sát đối với loại dữ liệu chéo; vàtần suất, ngày bắt đầu, ngày kết thúc, và số quan sát tạimỗi thời điểm đối với loại dữ liệu bảng.7 Nếu là dữ liệu năm, thì ở ô Frequency ta chọn Annual; ở các ô Start date và End date ta nhập năm bắt đầu vànăm kết thúc của các chuỗi dữ liệu. Nếu dữ liệu là quí, thì ở ô Frequency ta chọn Quarterly; ở các ô Start date vàEnd date ta nhập quí bắt đầu và quí kết thúc của các chuỗi dữ liệu. Ở đây ta có thể chọn một trong hai cách sau(ví dụ quí 2 năm 2005): 2005:2 hoặc 2005Q2. Nếu là dữ liệu tháng, thì ở ô Frequency ta chọn Monthly; ở các ôStart date và End date ta nhập tháng bắt đầu và tháng kết thúc của các chuỗi dữ liệu. Tương tự, ta có thể chọnmột trong hai cách sau (ví dụ tháng 8 năm 2008): 2008:8 hoặc 2008M8. Các ô đặt tên là tùy chọn (đặt tên tập tinvà tên trang), nhưng thông thường không cần thiết.8 Sử dụng đối với loại dữ liệu chéo và ta chỉ cần nhập số quan sát của bộ dữ liệu (dataset) vào ô Observations làxong. 4

5. BÀI GIẢNG 2: HƯỚNG DẪN SỬ DỤNG EVIEWS 6.0 ThS Phùng Thanh Bình ptbinh@ueh.edu.vn(ii) Tạo một tập tin bằng đọc từ một nguồn dữ liệu bên ngoàiTa có thể mở trực tiếp một nguồn dữ liệu bên ngoài nhưnhư cách mở một tập tinEviews. Để mở một filebên ngoài, trước hết tachọn File/Open/ForeignData as Workfile9, … đểđến hộp thoại Open, chọnFiles of type, mở filecần chuyển sang tập tinEviews, và thực hiện mộtsố điều chỉnh nếu cầnthiết. Xem ví dụ minh họasau đây. Để mở và chuyểnmột tập tin nào đó sangEviews, trước hết phảixác định thư mục thíchhợp, rồi chọn tập tin(File name và Files oftype) cần chuyển sang tậptin Eviews. Tuy nhiên,tập tin nguồn với địnhdạng khác nhau sẽ có mộtsố khai báo riêng. Đối với tập tinStata. Khi chọn và mở tậptin (ví dụ Chapter2.1.dtatrong thư mục data nhưtrong hộp thoại), ta thấyxuất hiện hộp thoại TableRead Specification. Trongđó, ta chọn Select hoặcUnselect để chọn các biếncần thiết chuyển sang dạng dữ liệu Eviews thôi. Tuynhiên, thông thường ta chọn tất cả các biến có sẵn theomặc định của Eviews. Ngoài ra, ta cũng có thể định nghĩalại bộ dữ liệu của mình thông qua chọn các điều kiện cầncho phù hợp mục tiêu nghiên cứu (ví dụ chỉ chọn các quan9 Dĩ nhiên ta cũng có thể chọn File/Open/Eviews Workfile … nhưng sẽ bất tiện một tí xíu là trong types offile sẽ mặc định loại tập tin Eviews thôi. 5

8. BÀI GIẢNG 2: HƯỚNG DẪN SỬ DỤNG EVIEWS 6.0 ThS Phùng Thanh Bình ptbinh@ueh.edu.vnNội dung cửa sổ tập tin của EviewsKhi mở một tập tin làm việc của Eviews ta sẽ thấy xuấthiện một cửa sổ như sau:Nguồn: Eviews 6 Users Guide, pp.47 8

10. BÀI GIẢNG 2: HƯỚNG DẪN SỬ DỤNG EVIEWS 6.0 ThS Phùng Thanh Bình ptbinh@ueh.edu.vn* Đặt tên và nhãn của một chuỗiNhấp đúp vào thực đơn Name, Eviews sẽ hiển thị ObjectName (tên đối tượng), trong đó có phần tên biến và nhãncủa biến. Nếu biến có tên nhãn thì khi ta lập bảng hoặcvẽ đồ thị, thì trên bảng hay đồ thị sẽ hiển thị tên nhãn.* Vẽ đồ thịCó hai cách biểu diễn đồ thị dạng Line của biến M1. Thứnhất, từ Series M1 (chuỗi M1), ta chọn View/Graph/Line.Thứ hai, từ cửa sổ tập tin chúng tôi ta chọnQuick/Graph/ … rồi nhập tên biến M1, chọn OK, và ta sẽthấy xuất hiện hộp thoại như sau:Nếu chọn Area, ta sẽ có đồ thị sau đây (nếu muốn copy vàdán đồ thị này ra word, ta nhấp vào đồ thị, Ctrl C, rồidán vào word một cách bình thường): 10

11. BÀI GIẢNG 2: HƯỚNG DẪN SỬ DỤNG EVIEWS 6.0 ThS Phùng Thanh Bình ptbinh@ueh.edu.vn M1 1,200 1,000 800 600 400 200 0 1955 1960 1965 1970 1975 1980 1985 1990Để chỉnh sửa và biên tập đồ thị, ta chọn Options hay nhấpđúp vào đồ thị. Eviews cho phép thay đổi hình nền, khungđồ thị, dạng đường đồ thị, đổi trục14, đặt tên nhãn đồthị, thay đổi font chữ, … Ngoài ra, Eviews cũng cho phépta ghi chú dưới dạng text lên đồ thị, đặt tên đồ thị vàlưu trong tập tin Eviews, hay có thể copy và dán dướidạng văn bản (nhấp vào đồ thị, Ctrl C, và có thể dán vàoword một cách bình thường). Ta cũng hay quan tâm đến cácdạng biểu thị đồ thị bằng cách chọ Template, trong đó cónhiều sự lựa chọn rất thú vị.14 Eviews cũng cho phép vẽ đồ thị hệ trục kép (thường đối với các biến có đơn vị tính khác nhau như lượng cổphiếu giao dịch và chỉ số giá chứng khoán) 11

14. BÀI GIẢNG 2: HƯỚNG DẪN SỬ DỤNG EVIEWS 6.0 ThS Phùng Thanh Bình ptbinh@ueh.edu.vn 1. Quick/Graph/Line, … GDP M1, OK 2. Chọn Graph Options, rồi chọn Axes/Scales để chuyển đồ thị của chuỗi GDP sang phải (Right)Ngoài ra, trong nhiều trường hợp người nghiên cứu có thểchọn dạng đồ thị thích hợp để biểu diễn mối quan hệ giữacác biến. Chẳng hạn, trường hợp hay gặp là trong mối quanhệ giữa lượng cổ phiếu giao dịch và chỉ số giá chứngkhoán, thì người ta thường biểu diễn lượng cổ phiếu giaodịch bằng đồ thị dạng bar19 và chỉ số giá chứng khoán bằngđồ thị dạng line. Trong Options ta chọn Type và chọn dạnghỗn hợp (Mixed)20.19 Thông thường là dạng cột (column), nhưng trường hợp này chưa gặp trong Eviews 5.20 Điều quan trọng là ‘đọc’ được mối quan hệ giữa các biến trên đồ thị. 14

15. BÀI GIẢNG 2: HƯỚNG DẪN SỬ DỤNG EVIEWS 6.0 ThS Phùng Thanh Bình ptbinh@ueh.edu.vn 1,000 1,200 800 600 800 400 400 200 1955 1960 1965 1970 1975 1980 1985 1990 M1 GDP* Thống kê mô tảTa có thể đồng thời tạo ra một bảng thống kê mô tả nhiềubiến khác nhau bằng cách chọn View/DescriptiveStats/Individual Samples hay Quick/GroupStatistics/Descriptive Statistics/Individual Samples.Ngoài ra, để xem xét mối quan hệ giữa từng cặp biến ta cóthể tạo ma trận hệ số tương quan bằng cách chọnView/Correlations/Pairwise Samples hay Quick/GroupStatistics/Correlations21.21 Thống kê hệ số tương quan sẽ được trình bày ở bài giảng 3 15

17. BÀI GIẢNG 2: HƯỚNG DẪN SỬ DỤNG EVIEWS 6.0 ThS Phùng Thanh Bình ptbinh@ueh.edu.vntượng phương trình và hệ thống chứa đựng các thông tin vềdạng mô hình, và các kế quả ước lượng cũng như các thamchiếu về nguồn dữ liệu được sử dụng để ước lượng. Các đốitượng đồ thị và biểu bảng chứa cả các thông tin số, chữ,và định dạng. Do các đối tượng chứa đựng các loại dữ liệukhác nhau nên ta sẽ làm việc với các đối tượng khác nhautheo các cách khác nhau.Các hiển thị đối tượng28Có nhiều cách khác nhau để phân tích dữ liệu trong mộtđối tượng. Các hiển thị là các cửa sổ dạng biểu bảng hayđồ thị cung cấp cho ta nhiều cách khác nhau để xem xét dữliệu trong một đối tượng. Ví dụ, một đối tượng chuỗi cóthể có các cách hiển thị bảng tính, đồ thị đường thẳng,đồ thị thanh, thống kê và biểu đồ tần suất, giản đồ tựtương quan29, đồ thị phân phối, … Một đối tượng phươngtrình có thể có các hiển thị dạng mô hình của phươngtrình, kết quả ước lượng, hiển thị giá trị thực-giá trịước lượng-phần dư30 (kể cả các đồ thị). Một hiển thị hiệpphương sai chứa ma trận hiệp phương sai của các hệ số ướclượng, … Các hiển thị của một đối tượng được trình bày trongcửa sổ đối tượng31. Chỉ một cửa sổ có thể được mở cho mỗiđối tượng và tại một thời điểm mỗi cửa sổ chỉ trình bàymột hiển thị duy nhất của một đối tượng. Dĩ nhiên, ta cóthể thay đổi hiển thị của một đối tượng. Lưu ý, thay đổihiển thị chỉ thay đổi định dạng của dữ liệu32 chứ khôngkhông thể thay đổi dữ liệu trong đối tượng.Các thủ tục của đối tượng33Hầu hết các đối tượng của Eviews đều có các thủ tục.Giống như hiển thị, thủ tục thường trình bày các bảngbiểu và đồ thị trong cửa sổ đối tượng. Tuy nhiên, kháchiển thị ở chổ thủ tục có thể thay đổi dữ liệu trong bảnthân đối tượng hoặc một đối tượng khác. Nhiều thủ tục cóthể tạo ra các đối tượng mới. Ví dụ, một đối tượng chuỗicó thể chứa các thủ tục làm trơn34 hay điều chỉnh yếu tố27 Numeric information28 Object view29 Correlogram30 Actual-Fitted-Residual view31 Object window32 Data display format33 Object procedure/procs34 Smoothing 17

19. BÀI GIẢNG 2: HƯỚNG DẪN SỬ DỤNG EVIEWS 6.0 ThS Phùng Thanh Bình ptbinh@ueh.edu.vn* Mở đối tượngSau khi đã chọn đối tượng hay một số đối tượng, chắc chắnta sẽ muốn mở hoặc tạo ra một đối tượng mới chứa các đốitượng đã chọn. Thật đơn giản, ta chỉ cần nhấp đúp vào đốitượng đó. Nếu là một nhóm các đối tượng, ta phải chọnView/Open as One Window …* Xem đối tượng38Một cách khác để chọn và mở đối tượng là chọn Show ởthanh công cụ39 hay chọn Quick/Show … từ thực đơn và nhậptên đối tượng vào hộp thoại. Nút Show cũng có thể được sửdụng để hiển thị các phương trình của các chuỗi.Cửa sổ đối tượngCửa sổ đối tượng là cửa sổ được hiển thị khi ta mở mộtđối tượng hay một chứa đối tượng. Một cửa sổ đối tượng sẽchứa hoặc một hiển thị của đối tượng hoặc các kết quả củamột thủ tục của đối tượng. Eviews cho phép mở cùng lúcnhiều cửa sổ đối tượng.* Các thành phần của một cửa sổ đối tượngĐây là minh họa cửa sổ phương trình từ kết quả hồi quitheo phương pháp OLS. Một số điểm cần lưu ý như sau:Nguồn: Eviews 6 User Guide, pp.6938 Show39 Toolbar 19

20. BÀI GIẢNG 2: HƯỚNG DẪN SỬ DỤNG EVIEWS 6.0 ThS Phùng Thanh Bình ptbinh@ueh.edu.vnThứ nhất, đây là một cửa sổ chuẩn vì ta có thể đóng, thayđổi kích cở, phóng to, thu nhỏ, và kéo lên xuống hay qualại. Khi có nhiều cửa sổ khác đang mở, nếu ta muốn cửa sổnào ở chế độ làm việc thì ta chỉ cần nhấp vào thanh tiêuđề hay bất kỳ đâu trong cửa số đó. Lưu ý, cửa sổ đang ởchế độ làm việc được biểu hiện với thanh tiêu đề có màuđậm. Thứ hai, thanh tiêu đề của cửa sổ đối tượng cho biếtloại đối tượng, tên đối tượng, và tập tin chứa. Nếu đốitượng cũng chính là đối tượng chứa thì thông tin chứađược thay bằng thông tin thư mục.Thứ ba, trên đỉnh cửa sổcó một thanh công cụ chứa một số nút giúp ta dễ dàng làmviệc.* Các thực đơn và thanh công cụ của đối tượngNguồn: Eviews 6 User Guide, pp.71Làm việc với đối tượng* Đặt tên và tên nhãn của đối tượngCác đối tượng có thể được đặt tên hoặc không đượcđặt tên. Khi ta đặt tên cho đối tượng, thì tên đốitượng sẽ xuất hiện trong thư mục của tập tinEviews, và đối tượng sẽ được lưu như một phần củatập tin khi tập tin được lưu. Ta phải đặt tên đốitượng nếu muốn lưu lại các kết quả của đối tượng. 20

21. BÀI GIẢNG 2: HƯỚNG DẪN SỬ DỤNG EVIEWS 6.0 ThS Phùng Thanh Bình ptbinh@ueh.edu.vnNếu ta không đặt tên, đối tượng sẽ được gọi là”UNTITLED”. Các đối tượng không được đặt tên sẽkhông được lưu cùng với tập tin, nên chúng sẽ bịxóa khi đóng tập tin. Để đổi tên đối tượng, trước hết phải mở cửa sổđối tượng, sau đón nhấp vào nút Name trên cửa sổđối tượng và nhập tên (và tên nhãn) vào. Nếu cóđặt tên nhãn thì tên nhãn sẽ xuất hiện trong cácbảng biểu đồ thị, nếu không Eviews sẽ dùng tên đốitượng. Lưu ý, đây là nhóm đã mặc định và khôngđược sử dụng cho tên đối tượng: ABS, ACOS, AND,AR, ASIN, C, CON, CNORM, COEF, COS, D, DLOG,DNORM, ELSE, ENDIF, EXP, LOG, LOGIT, LPT1, LPT2,MA, NA, NOT, NRND, OR, PDL, RESID, RND, SAR, SIN,SMA, SQR, và THEN.* Copy và dán đối tượngCó hai phương pháp tạo ra bản sao các thông tinchứa trong đối tượng: Copy và Freeze. Nếu ta chọn Object/Copy từ thực đơn, Eviews sẽtạo ra một đối tượng mới giống y như đối tượng gốc(dĩ nhiên phải khác tên). Ta cũng có thể copy đốitượng từ cửa sổ tập tin bằng cách chỉ ra đối tượngvà chọn Object/Copy Selected … sau đó xác định tênđích40 cho đối tượng mới được copy. Nếu ta chọn Object/Freeze Output hay chọn nútFreeze trên thanh công cụ của đối tượng, một đốitượng dạng bảng hay đồ thị được tạo ra giống y nhưhiển thị hiện hành của đối tượng gốc. Freeze hiểnthị tạo ra một bản copy của hiển thị và tạo ra mộtđối tượng độc lập hoàn toàn. Tính chất cơ bản củaviệc Freeze một đối tượng là các bảng biểu và đồthị được tạo ra có thể được chỉnh sử cho mục đíchtrình bày hay báo cáo.40 Destination name, khác với original name 21

23. BÀI GIẢNG 2: HƯỚNG DẪN SỬ DỤNG EVIEWS 6.0 ThS Phùng Thanh Bình ptbinh@ueh.edu.vnrồi nhập tên các chuỗi, công thức, hàm số vào, rồi chọnName để đặt tên nhóm. Mẫu là một tập hợp các quan sát trong tập tin Eviewsđược sử dụng cho việc mô tả dữ liệu hoặc thực hiện cácqui trình thống kê. Cần phân biệt hai khái niệm, WorkfileRange – toàn bộ các quan sát sẵn có của một bộ dữ liệu,với Workfile Sample – chỉ các quan sát được sử dụng chomục đích phân tích nhất định.Có bốn cách xác định một mẫu tập tin Eviews: Thứ nhất,nhấp vào Sample trên Workfile Toolbar; Thứ hai, nhấp đúpvào mẫu hiện trong cửa số tập tin Eviews; Thứ ba, chọnProc/Sample … từ thực đơn chính của tập tin Eviews; Thứtư, dùng lệnh smpl trong cửa sổ lệnh. Để mở rộng một tập tin Eviews, ta chọn Proc/ChangeWorkfile Range …, nhập vào các ô Start date và End datekhoảng thời gian mới. Khi đó, các quan sát mới của tất cảcác chuỗi sẽ là NA. Ngoài ra, Eviews cho phép ta có thể nhập và xuất dữliệu từ các nguồn bên ngoài như Excel, Lotus, hay ASCIIsang Eviews và ngược lại. Để biết chi tiết, ta có thểtham khảo chương 5, Eviews 6 Users Guide.PHÉP TOÁN VÀ HÀM SỐ TRONG EVIEWSPhần này sẽ giới thiệu các nguyên tắc cơ bản khi sử dụngcác phép tính toán học trong Eviews và hướng dẫn cách sửdụng các phép toán này khi làm việc với các dữ liệu chuỗivà nhóm.Các phép toán số học43Các phép tính trong Eviews có thể là các toán tử44 cho cácphép toán số học thông thường. Trong Eviews, các toán tử43 Numeric expression 23

25. BÀI GIẢNG 2: HƯỚNG DẪN SỬ DỤNG EVIEWS 6.0 ThS Phùng Thanh Bình ptbinh@ueh.edu.vn Antilog của X (eX) @exp(x) Hàm nghịch đảo của X (1/X) @inv(x) Hàm logarith tự nhiên của X (ln(X)) @log(x) hoặc log(x) Căn bậc hai của X @sqrt(x) hoặc Tạo biến xu thế sqrt(x) Làm tròn số @trend(base date) Lũy thừa của X @round(x) x^2, x^3, …Nguồn: Eviews 6 User GuideĐể tạo một vô hướng trên Eviews, ví dụ tính hệ số tươngquan giữa X và Y, ta tiến hàm như sau. Từ cửa số lệnh, tanhập vào như sau: Scalar rxy=@cor(x,y)Khi đó trong tập tin Eviews sẽ có một đối tượng mới dạngtích vô hướng là RXY. Vô hướng được sử dụng khá phổ biếntrong cuốn sách này, đặc biệt là ở các nội dung kiểm địnhgiả thiết.Biến trễ, tới, sai phân45, mùa vụ, và biến xu thếKhi làm việc với dữ liệu chuỗi thời gian, ta thường xử lýdữ liệu bằng cách chuyển hóa sang dạng trễ, tới, saiphân, hoặc tạo thêm các biến giả mùa vụ.45 Lead: tới, Lag: trễ, và Difference: Sai phân 25

26. BÀI GIẢNG 2: HƯỚNG DẪN SỬ DỤNG EVIEWS 6.0 ThS Phùng Thanh Bình ptbinh@ueh.edu.vn* Biến trễ, tới và sai phân Biến trễ một giai đoạn (Xt-1): x(-1) Biến trễ k giai đoạn (Xt-k): x(-k) Biến tới một giai đoại (Xt+1): x(1) Biến tới k giai đoạn (Xt+k): x(k) Sai phân bậc một (∆X = Xt – Xt-1): d(x) Sai phân bậc k (∆kX = Xt – Xt-k): d(x,k) Sai phân bậc một của biến trễ dạng log tự nhiên:dlog(x) Trung bình trượt k giai đoạn: @movav(x,k)Ngoài ra, ta có thể đồng thời kết hợp nhiều toán tử vớinhau, ví dụ dlog(x), dlog(x,4), … Để tạo một biến mới (vídụ sai phân của X) ta có thể chọn một trong hai cách sauđây. Thứ nhất, trên cửa sổ lệnh ta nhập genr dx=d(x). Thứhai, ta có thể nhấp vào genr trên thanh công cụ của cửasổ tập tin Eviews và nhập dx=d(x).* Biến giả mùa vụ Tạo ra một biến giả theo quí có giá trị là 1 đối với quí 2 và giá trị là 0 đối với các quí khác: @seas(2) Tạo ra một biến giả theo tháng có giá trị là 1 đối với tháng 2 và giá trị 0 đối với các tháng khác: @month(2)o Biến xu thế Biến xu thế là một biến có giá trị từ 1 đến n, trong đó 1 đại diện cho quan sát đầu tiên trong dữ liệu và n đại diện cho quan sát cuối cùng trong dữ liệu. Tạo biến xu thế đối với dữ liệu theo năm, ví dụ bắt đầu từ năm 1990 đến 2008, ta làm như sau: Trên cửa sổ lệnh ta nhập genr t=@trend(1989). Tạo biến xu thế đối với dữ liệu theo quí, ví dụ bắt đầu từ 2000Q2 đến 2008Q3, ta làm như sau: Trên cửa sổ lệnh ta nhập genr t=@trend(2000Q1). Tạo biến xu thế đối với dữ liệu theo tháng, ví dụ bắt đầu từ 2002M3 đến 2008M2, ta làm như sau: Trên cửa sổ lệnh ta nhập genr t=@trend(2002M2). 26

27. BÀI GIẢNG 2: HƯỚNG DẪN SỬ DỤNG EVIEWS 6.0 ThS Phùng Thanh Bình ptbinh@ueh.edu.vnTuy nhiên, khi phân tích dữ liệu và hồi qui, ta không cầnphải tạo thêm các biến mới như vậy mà thường sử dụng trựctiếp các hàm từ các dữ liệu gốc. Ví dụ, ta có thể hồi quitrực tiếp như sau: y c x @trend(1989) hoặc log(y) clog(x). Lý do ta không cần tạo thêm biến mới là để chotập tin Eviews được đơn giản và dễ quản lý hơn. PHÂN TÍCH DỮ LIỆU VỚI EVIEWSPHÂN TÍCH CHUỖIKhi mở một chuỗi dữ liệu, nếuchọn View ta thấy xuất hiện mộtthực đơn dạng drop-down như hìnhbên cạnh. Thực đơn nay chia thànhbốn block riêng. Block thứ nhấtmô tả dữ liệu dưới dạng bảng tínhhay đồ thị. Block thứ hai và thứba cung cấp các công cụ thống kêcơ bản về chuỗi, trong đó blockthứ ba chủ yếu sử dụng cho cácchuỗi thời gian. Block thứ tư chobiết các thuộc tính, và tên nhãncủa chuỗi. Lưu ý rằng các phân phối xácsuất của một biến ngẫu nhiên sẽđược trình bày một cách chi tiết ở bài giảng 3.Thống kê mô tảThống kê mô tả gồm có bốn nội dung: Đồ thị tần suất vàthống kê (Histogram and Stats), Bảng thống kê (StatsTable), Thống kê theo nhóm (Stats by Classification …),và Đồ thị hình hộp theo nhóm (Boxplots by Classification…). 27

30. BÀI GIẢNG 2: HƯỚNG DẪN SỬ DỤNG EVIEWS 6.0 ThS Phùng Thanh Bình ptbinh@ueh.edu.vn H0: µ = m H1: µ ≠ mNếu ta không biết giá trị độ lệch chuẩn của X, Eviews sẽcho kết quả giá trị thống kê t 50tính toán như sau: X−m t= (2.2) s/ NTrong đó, s là độ lệch chuẩn của mẫu và N là số quan sáttrong mẫu. Nếu X có phân phối chuẩn, thì với giả thiết H0,thống kê t sẽ theo phân phối t với bậc tự do là N-1. Nếu ta biết giá trị độ lệch chuẩn của X, Eviews sẽcho kết quả giá trị thống kê z51 tính toán như sau: X−m z= (2.3) σ/ NTrong đó, σ là độ lệch chuẩn tổng thể của X. Nếu X cóphân phối chuẩn với độ lệch chuẩn là σ, thì với giả thiếtH0, thống kê z có phân phối chuẩn hóa. Làm sao để tạo biếnz trong Eviews? Nếu giá trị t (z) tính toán lớn hơn giá trị t (z) phêphán ở một mức ý nghĩa xác định (α), ta bác bỏ giả thiếtH0 và ngược lại.Kiểm định phương saiThực hiện kiểm định giả thiết H0 cho rằng phương sai củachuỗi X bằng một giá trị σ2 nhất định, ta có các giả thiếtnhư sau: H0: var(X) = σ2 H1: var(X) ≠σ2Eviews sẽ cho kết quả thống kê chi bình phương tính toánnhư sau: 2 ( N − 1)s 2 χ = (2.4) σ250 Sẽ được giải thích ở bài giảng 551 Khác biệt giữa thống kê z và thống kê t sẽ được giải thích ở bài giảng 5 30

31. BÀI GIẢNG 2: HƯỚNG DẪN SỬ DỤNG EVIEWS 6.0 ThS Phùng Thanh Bình ptbinh@ueh.edu.vnVới giả thiết H0 và giả định rằng X có phân phối chuẩn,thì thống kê chi bình phương sẽ theo phân phối chi bìnhphương với N-1 bậc tự do.* Kiểm định ngang bằng theo nhómĐây là các kiểm định xem cácgiá trị trung bình, phương saivà trung vị ở các phân nhómtrong cùng một chuỗi có bằngnhau hay không. Khi chọnView/Tests for DescriptiveStats/Equality Tests byClassification … sẽ thấy xuấthiện một hộp thoại như hình bên. Trước tiên ta phải chọnloại kiểm định: trung bình, phương sai, hay trung vị, sauđó chọn các phân nhóm muốn so sánh.Xác định giả thiết:Đối với kiểm định trung bình H0: Trung bình của các nhóm bằng nhau H1: Trung bình của các nhóm khác nhauĐối với kiểm định phương sai H0: Phương sai của các nhóm bằng nhau H1: Phương sai của các nhóm khác nhauĐể quyết định, ta so sánh giá trị thống kê F52 tính toánvới giá trị thống kê F phê phán. Nếu giá trị thống kê Ftính toán lớn hơn giá trị thống kê F quan sát tại một mứcý nghĩa nhất định, ta bác bỏ giả thiết H0 và ngược lại.Lập bảng tần suất một chiềuĐể lập bảng tần suất một chiều ta chọn View/One-WayTabulation …Biểu đồ tự tương quanMục đích của biểu đồ tự tương quan là giúp ta kiểm địnhxem một chuỗi thời gian dừng hay không dừng53. Trong cácmô hình dự báo chuỗi thời gian và dự báo bằng phương pháp52 Sẽ được giải thích ở bài giảng 4 và 553 Đây là một nội dung rất quan trọng khi phân tích chuỗi thời gian và đặc biệt có ý nghĩa rất lớn trong việc lựachọn mô hình dự báo thích hợp trong các phương pháp dự báo định lượng với dữ liệu chuỗi thời gian. Nội dungnày sẽ được trình bày chi tiết ở bài giảng 14. 31

33. BÀI GIẢNG 2: HƯỚNG DẪN SỬ DỤNG EVIEWS 6.0 ThS Phùng Thanh Bình ptbinh@ueh.edu.vn* Thống kê QHai cột cuối trong biểu đồ tự tương quan là thống kê Qcủa Ljung-Box và giá trị xác suất tương ứng. Thống kê Qkiểm định giả thiết đồng thời là tất cả các hệ số ρk chotới một độ trễ đồng thời bằng không. Giá trị thống kê Qtính toán theo công thức sau đây: m Q = n ∑ ρ2 k (2.6) k =1Với cỡ mẫu lớn, Q có phân phối theo Chi bình phương vớibậc tự do bằng số độ trễ. Nếu giá trị thống kê Q tínhtoán lớn hơn giá trị thống kê Q quan sát ở một mức ýnghĩa xác định, ta bác bỏ giả thiết H0. Trong Eviews, ta lập biểu đồ tự tương quan bằng cáchchọn View/Correlogram … , xác định biểu đồ tự tương quancủa chuỗi gốc hay chuỗi sai phân bậc một và bậc hai, vàcuối cùng là xác định độ trễ k. Ví dụ, chuỗi GDP chúng tôi có biểu đồ tự tương quan như sau:Dựa vào biểu đồ tự tương quan để xác định một chuỗi thờigian dừng hay không như sau. Có thể tóm tắt ý tưởng chínhnhư sau. Nếu hệ số tự tương quan đầu tiên khác khôngnhưng các hệ số tự tương quan tiếp theo bằng không mộtcách có ý nghĩa thống kê, thì đó là một chuỗi dừng. Nếumột số hệ số tự tương quan khác không một cách có ý nghĩathống kê thì đó là một chuỗi không dừng.Kiểm định nghiệm đơn vịKiểm định nghiệm đơn vị là một kiểm định được sử dụng kháphổ biến để kiểm định một chuỗi thời gian dừng hay không 33

34. BÀI GIẢNG 2: HƯỚNG DẪN SỬ DỤNG EVIEWS 6.0 ThS Phùng Thanh Bình ptbinh@ueh.edu.vndừng. Nội dung chi tiết phần kiểm định nghiệm đơn vị sẽđược trình bày ở Bài giảng 15 về các mô hình hồi quichuỗi thời gian. Tuy nhiên, để hiểu qui trình kiểm địnhnghiệm đơn vị trên Eviews, ta nên xem qua một số ý tưởngcơ bản về mặt lý thuyết. Trước hết, cần lưu ý rằng cónhiều khái niệm chưa được học nên người đọc không nhấtthiết phải hiểu ngay nội dung kiểm định nghiệm đơn vị ởbài giảng này.Giả sử ta có phương trình hồi qui tự tương quan như sau: Yt = ρYt-1 + ut (-1 ≤ ρ ≤ 1) (2.7)Ta có các giả thiết: H0: ρ = 1 (Yt là chuỗi không dừng) H1: ρ < 1 (Yt là chuỗi dừng)Phương trình (2.7) tương đương với phương trình (2.8)sau đây: Yt – Yt-1 = ρYt-1 – Yt-1 + ut = (ρ – 1)Yt-1 + ut ∆Yt = δYt-1 + ut (2.8)Như vậy các giả thiết ở trên có thể được viết lại nhưsau: H0: δ = 0 (Yt là chuỗi không dừng) H1: δ < 0 (Yt là chuỗi dừng)Dickey và Fuller cho rằng giá trị t ước lượng của hệ sốYt-1 sẽ theo phân phối xác suất τ (tau statistic, τ = giátrị δ ước lượng/sai số của hệ số δ). Kiểm định thống kê τcòn được gọi là kiểm định Dickey – Fuller (DF). Kiểm địnhDF được ước lượng với 3 hình thức:* Khi Yt là một bước ngẫu nhiên không có hằng số: ∆Yt = δYt-1 + ut (2.9)* Khi Yt là một bước ngẫu nhiên có hằng số: ∆Yt = β1 + δYt-1 + ut (2.10)* Khi Yt là một bước ngẫu nhiên với hằng số xoay quanh một đường xu thế ngẫu nhiên: ∆Yt = β1 + β2TIME + δYt-1 + ut (2.11) 34

35. BÀI GIẢNG 2: HƯỚNG DẪN SỬ DỤNG EVIEWS 6.0 ThS Phùng Thanh Bình ptbinh@ueh.edu.vnĐể kiểm định H0 ta so sánh giá trị thống kê τ tính toánvới giá trị thống kê τ tra bảng DF (các phần mềm kinh tếlượng đều cung cấp giá trị thống kê τ). Tuy nhiên, do cóthể có hiện tượng tương quan chuỗi giữa các ut do thiếubiến, nên người ta thường sử dụng kiểm định DF mở rộng làADF (Augmented Dickey – Fuller Test). Kiểm định này đượcthực hiện bằng cách đưa thêm vào phương trình (2.11) cácbiến trễ của sai phân biến phụ thuộc ∆Yt: ∆Yt = β1 + β2TIME + δYt-1 + αi Σ∆Yt-i + εt (2.12)Để tiến hành kiểm định nghiệm đơn vị trên Eviews ta chọnView/Unit Root Test …, sẽ xuất hiện hộp thoại Unit RootTest. Ở lựa chọnTest for unit rootin, chọn level nếumuốn kiểm địnhchuỗi gốc có phảilà một chưỡi dừnghay không, chọn 1stdifference nếumuốn kiểm địnhchuỗi sai phân bậcmột có phải là mộtchuỗi dừng haykhông. Ở lựa chọnInclude in testequation, chọnintercept nếu dùngphương trình(2.10), chọn trend and intercept nếu dùng phương trình(2.11), chọn None nếu dùng phương trình (2.9), chọn trendand intercept và xác định độ trễ ở lựa chọn Lag lengthnếu dùng phương trình (2.12). 35

36. BÀI GIẢNG 2: HƯỚNG DẪN SỬ DỤNG EVIEWS 6.0 ThS Phùng Thanh Bình ptbinh@ueh.edu.vnPHÂN TÍCH NHÓMKhi mở một nhóm, nếu chọn View tathấy xuất hiện thực đơn dạng drop-down như hình bên cạnh. Block thứnhất cung cấp các cách khác nhauđể mô tả dữ liệu trong nhóm. Blockthứ hai trình bày các thống kê cơbản. Block thứ ba chuyên về cácthống kê của chuỗi thời gian.Block thứ tư là tên nhãn nhằm cungcấp các thông tin về nhóm. Trongphần này ta chỉ xem xét một số nộidung quan trọng thường được sửdụng trong kinh tế lượng.Thống kê mô tảTrong thống kê mô tả ta thấy có baloại như sau: Common Sample,Individual Sample, và Boxplots.Common Sample chỉ tính các thốngkê các quan sát có đầy đủ giá trịở tất cả các chuỗi dữ liệu trongnhóm. Individual Sample tính cácthống kê của các quan sát có đầyđủ giá trị ở mỗi chuỗi dữ liệu.Kiểm định đồng liên kết56Chúng ta sẽ được biết ở bài giảng 14 rằng khi hồi qui cácchuỗi thời gian không dừng thường dẫn đến “kết quả hồiqui giả mạo”57. Tuy nhiên, Engle và Granger58 (1987) chorằng nếu kết hợp tuyến tính của các chuỗi thời gian khôngdừng có thể là một chuỗi dừng và các chuỗi thời giankhông dừng đó được cho là đồng liên kết. Kết hợp tuyếntính dừng được gọi là phương trình đồng liên kết và cóthể được giải hích như mối quan hệ cân bằng dài hạn giữacác biến. Nói cách khác, nếu phần dư trong mô hình hồiqui giữa các chuỗi thời gian không dừng là một chuỗidừng, thì kết quả hồi qui là thực và thể hiên mối quan hệcân bằng dài hạn giữa các biến trong mô hình. Mục đíchcủa kiểm định đồng liên kết là xác định xem một nhóm các56 Cointegration test57 Spurious regression58 Đoạt giải Nobel kinh tế năm 2003 36

37. BÀI GIẢNG 2: HƯỚNG DẪN SỬ DỤNG EVIEWS 6.0 ThS Phùng Thanh Bình ptbinh@ueh.edu.vnchuỗi không dừng có đồng liên kết hay không. Có hai cáchkiểm định.* Kiểm định nghiệm đơn vị phần dưGiả sử GDP và M1 là hai chuỗi thời gian không dừng và tacó mô hình hồi qui như sau: GDPt = β1 + β2M1t + ut (2.13)Nếu phần dư ut là một chuỗi dừng thì kết quả hồi qui giữaGDP và M1 là “thực” và ta vẫn sử dụng một cách bìnhthường. Nói cách khác, GDP và M1 có quan hệ đồng liên kếtvà β2 được gọi là hệ số hồi qui đồng liên kết. Các bướcthực hiện trên Eviews như sau: 1) Ước lượng mô hình GDPt = β1 + β2M1t + ut 2) Kiểm định nghiệm đơn vị chuỗi ut* Kiểm định đồng liên kết dựa trên phương pháp VAR của JohasenEviews thực hiện kiểm định đồng liên kết trên cơ sởphương pháp luận VAR của Johasen (1991, 1995a). Lưu ý,kiểm định này chỉ có hiệu lực khi ta đang xét các chuỗithời gian không dừng. Giả sử ta muốn kiểm định đồng liênkết giữa GDP và M1 trong chúng tôi theo phương phápluận của Johasen, ta chọn View/Cointegration Test … sẽthấy xuất hiện một hộp thoại như sau: 37

39. BÀI GIẢNG 2: HƯỚNG DẪN SỬ DỤNG EVIEWS 6.0 ThS Phùng Thanh Bình ptbinh@ueh.edu.vnNhân quả GrangerĐể kiểm định liệu có tồn tại mối quan hệ nhân quảGranger59 giữa hai chuỗi thời gian Y và X trên Eviews, taxây dựng hai phương trình sau:Yt = α0 + α1Yt-1 + … + αlYt-l + β1Xt-1 + … + βlXt-l + εt (2.14)Xt = α0 + α1Xt-1 + … + αlXt-l + β1Yt-1 + … + βlYt-l + εt (2.15)Để xem các biến trễn của X có giải thích cho Y (X tácđộng nhân quả Granger lên Y) và các biến trễ của Y cógiải thích cho X (Y tác động nhân quả Granger lên X) haykhông ta kiểm định giả thiết sau đây cho mỗi phươngtrình: H0: β1 = β2 = … = βl = 0 (2.16)Để kiểm định giả thiết đồng thời này, ta sử dụng thống kêF của kiểm định Wald60 và cách quyết định như sau: Nếu giátrị thống kê F tính toán lớn hơn giá trị thống kê F phêphán ở một mức ý nghĩa xác định ta bác bỏ giả thiết H0 vàngược lại. Có bốn khả năng như sau: Nhân quả Granger một chiều từ X sang Y nếu các biến trễ của X có tác động lên Y, nhưng các biến trễ của Y không có tác động lên X. Nhân quả Granger một chiều từ Y sang X nếu các biến trễ của Y có tác động lên X, nhưng các biến trễ của X không có tác động lên Y. Nhân quả Granger hai chiều giữa X và Y nếu các biến trễ của X có tác động lên Y và các biến trễ của Y có tác động lên X. Không có quan hệ nhân quả Granger giữa X và Y nếu các biến trễ của X không có tác động lên Y và các biến trễ của Y không có tác động lên X.Để kiểm định nhân quả Granger trên Eviews ta chọnView/Granger Causality … sẽ xuất hiện một hộp thoại về độtrễ tối ưu. Khi xác định độ trễ tối ưu và chọn OK, ta cókết quả như sau:59 Granger causality60 Kiểm định tập hợp ràng buộc tuyến tính sẽ được trình bày ở bài giảng 7 39

40. BÀI GIẢNG 2: HƯỚNG DẪN SỬ DỤNG EVIEWS 6.0 ThS Phùng Thanh Bình ptbinh@ueh.edu.vnLưu ý, các độ trễ của X và Y có thể khác nhau và có thểđược xác định bằng một số tiêu chí thống kê khác nhau.XÂY DỰNG HÀM KINH TẾ LƯỢNG TRÊN EVIEWSTrong tài liệu này ta chỉ xét phân tích hồi qui đơnphương trình. Phần này trình bày các kỹ thuật phân tíchhồi qui cơ bản như xác định và ước lượng một mô hình hồiqui, kiểm định giả thiết, và sử dụng kết quả ước lượngcho các mục đích dự báo.ĐỐI TƯỢNG PHƯƠNG TRÌNHƯớc lượng hồi qui đơn phương trình trên Eviews được thựchiện bằng cách sử dụng đối tượng phương trình. Để tạo ramột đối tượng phương trình ta chọn Object/New Object …/Equation hay Quick/Estimate Equation … từ thực đơnchính, hay đơn giản chỉ cần đánh equation trong cửa sổlệnh. Kế tiếp, ta sẽ xác định dạng phương trình trong hộpsoạn thảo Specification của hộp thoại Equation Estimationvà chọn phương pháp ước lượng ở ô Method. Các kết quả ướclượng được lưu trữ như một phần của đối tượng phươngtrình.Xác định phương trình hồi quiKhi tạo ra một đối tượng phươngtrình sẽ thấy xuất hiện một hộpthoại Equation Estimation và tacần xác định ba việc sau: dạngphương trình, phương pháp ướclượng, và mẫu được sử dụng để ướclượng. Trong hộp soạn thảo dạngphương trình ta nhập các biến phụthuộc và giải thích theo thứ tự từtrái qua phải và lưu ý xác định 40

41. BÀI GIẢNG 2: HƯỚNG DẪN SỬ DỤNG EVIEWS 6.0 ThS Phùng Thanh Bình ptbinh@ueh.edu.vndạng hàm. Có hai cách xác định dạng phương trình ướclượng: liệt kê các biến và công thức. Phương pháp liệt kêdễ hơn nhưng chỉ có thể sử dụng giới hạn ở các dạng môhình tuyến tính. Phương pháp công thức tổng quát hơn vàphải được sử dụng để xác định các dạng mô hình phi tuyếnvà các mô hình có ràng buộc tham số.Xác định phương trình theo phương pháp liệt kêCách đơn giản nhất để xác định một phương trình tuyếntính là liệt kê các biến trong phương trình. Trước hết,nhập tên biến phụ thuộc hay công thức của biến phụ thuộc,sau đó nhập tên các biến giải thích. Ví dụ, sử dụngChapter2.3.xls để xác định phương trình hồi qui GDP theocung tiền M1, ta nhập vào hộp thoại soạn thảo dạng phươngtrình như sau: GDP c M1 (2.17)Lưu ý có hiện diện của chuỗi C trong danh sách các biếngiải thích. Đây là một chuỗi mặc định sẵn trong Eviewsđược dùng để xác định hằng số trong phương trình hồi qui.Eviews không tự động đưa hằng số vào phương trình hồi quivì tùy thuộc vào mô hình có hệ số cắt hay không nên taphải đưa vào khi xác định phương trình hồi qui. C là mộtđối tượng đã được xác định trước trong bất kỳ một tập tinEview nào. Đây là một vectơ hệ số mặc định – khi ta xácđịnh phương trình bằng cách liệt kê tên các biến, Eviewssẽ lưu giữ các hệ số ước lượng trong vectơ này theo thứtự xuất hiện trong danh sách các biến. Trong ví dụ trên,hằng số sẽ được lưu trong C(1) và hệ số của M1 sẽ đượclưu trong C(2). Nếu mô hình có biến trễ một giai đoạn của biến phụthuộc thì ta liệt kê các biết trong hộp thoại soạn thảonày như sau: GDP GDP(-1) c M1 (2.18)Như vậy hệ số của biến trễ biến GDP là C(1), hệ số củahằng số là C(2), và hệ số của M1 là C(3). Nếu mô hình có nhiền biến trễ liên tục của biến GDPthì thay vì phải nhập từng biến trễ GDP(-1) GDP(-2) GDP(-3) GDP(-4), Eviews cho phép thực hiện như sau: GDP GDP(1 to 4) c M1 (2.19)Tuy nhiên, nếu ta không đưa số 1 và dấu ngoặc đơn thìEviews sẽ hiểu đó là số 0. Ví dụ: 41

42. BÀI GIẢNG 2: HƯỚNG DẪN SỬ DỤNG EVIEWS 6.0 ThS Phùng Thanh Bình ptbinh@ueh.edu.vn GDP c M1(to 2) M1(-4) (2.20)Thì Eviews sẽ hiểu ta hồi qui GDP theo hằng số C, M1,M1(-1), M1(-2), và M1(-4). Ngoài ra, ta cũng có thể đưacác chuỗi điều chỉnh vào nhóm các biến giải thích. Ví dụta hồi qui GDP theo hằng số, biến trễ của GDP, và biếntrung bình di động hai giai đoạn của M1 như sau: GDP GDP(-1) c ((M1+M1(-1))/2) (2.21)Xác định phương trình theo phương pháp công thứcMột công thức phương trình trong Eviews là một biểu thứctoán về các biến và hệ số. Để xác định một phương trìnhbằng công thức, đơn giản là ta nhập biểu thức vào hộpthoại soạn thảo. Ví dụ, hồi qui mô hình dạng log tự nhiênnhư sau: log(GDP) c log(GDP(-1)) log(M1) (2.22)Hai lý do chủ yếu ta phải sử dụng phương pháp công thứcnày là ước lượng các mô hình ràng buộc và phi tuyến.Ước lượng một phương hồi quiPhương pháp ước lượngSau khi đã xácđịnh phươngtrình, ta cầnchọn phương phápước lượng bằngcách nhấp vàoMethod và sẽ thấyxuất hiện một hộpthoại dạng drop-down liệt kê các phương pháp ước lượng. Phương pháp sử dụng phổ biến nhất đối với hồi qui đơnphương trình là phương pháp bình phương bé nhất61. Trongbài giảng trình kinh tế lượng căn bản của cuốn sách này,ta chỉ sử dụng hai phương pháp là LS – Least Squares62 vàBINARY – Binary choice63. Hai phương pháp này sẽ đượctrình bày chi tiết vào các bài giảng sau.61 Least squares/Ordinary least squares62 Kể cả phương pháp WLS (Weighted least squares) và GLS (Generalized least squares)63 Hai loại mô hình sẽ được trình bày ở bài giảng 15 là Logit và Probit 42

43. BÀI GIẢNG 2: HƯỚNG DẪN SỬ DỤNG EVIEWS 6.0 ThS Phùng Thanh Bình ptbinh@ueh.edu.vnMẫu ước lượngTa nên xác định mẫu sử dụng cho việc ước lượng mô hình.Theo mặc định, Eviews đưa ra mẫu của tập tin Eviews hiệnhành, nhưng ta có thể thay đổi mẫu theo mục đích ướclượng bằng cách nhập vào hộp thoại Sample. Thay đổi mẫu ởđây không ảnh hưởng gì đến mẫu của tập tin Eviews hiệnhành. Nếu có quan sát không có giá trị64, Eviews tạm thờiđiều chỉnh mẫu ước lượng để loại bỏ các quan sát đó rakhỏi mẫu phân tích.Ngoài ra, nếu trong mô hình có các biến trễ hay biến điềuchỉnh thì Eviews cũng điều chỉnh số mẫu ước lượng.Các lựa chọn ướclượngKhi chọn Options tasẽ thấy xuất hiệnhộp thoại EquationEstimation. Các nộidung trong phần lựachọn ước lượng nhưHeteroskedastiscityconsistentcoefficientcovariance vàWeighted LS/TSLS sẽđược trình bày chitiết ở bài giảng 12và 13. Đây là mộtphương pháp xử lý hiện tượng tự tương quan rất phổ biếnđối với cỡ mẫu lớn (gọi là phương pháp Newey-West).64 Missing value 43

44. BÀI GIẢNG 2: HƯỚNG DẪN SỬ DỤNG EVIEWS 6.0 ThS Phùng Thanh Bình ptbinh@ueh.edu.vnKết quả ước lượngSau khi đã hoàn thành các bước trên ta chọn OK trong hộpthoại Equation Estimation, Eviews sẽ hiển thị cửa sốphương trình về hiển thị kết quả ước lượng. Trong kết quảước lượng của Eviews gồm ba phần chính: Tóm tắt các đặcđiểm của mô hình hồi qui (biến phụ thuộc, phương pháp ướclượng, thờiđiểm thực hiệnước lượng, mẫuước lượng, vàsố quan sátđược sử dụngcho ước lượngkết quả); Kếtquả hệ số (têncác biến giảithích, giá trịước lượng cáchệ số hồi qui,sai số chuẩn,thống kê t, vàgiá trị xácsuất); và Tómtắt thống kê(hệ số xác định R2, R2 điều chỉnh, sai số chuẩn của hồiqui, tổng bình phương phần dư (RSS), thống kê d Durbin-Watson, AIC, SIC, thống kê F, …). Sau khi học xong bàigiảng trình kinh tế lượng căn bản ít nhất ta sẽ hiểu mộtcách hệ thống tất cả các thông tin trong bảng kết quả ướclượng này.Phân tích kết quả hồi quiCác hiển thị của phương trình hồi quiCác hình thức biểu diễn phương trìnhhồi qui65. Biểu diễn phương trình hồiqui dưới ba hình thức: hình thức lệnhước lượng trong màn hình lệnh củaEviews, hình thức phương trình đại sốdưới dạng các ký hiệu, và hình thứcphương trình với các giá trị ước lượngcác hệ số.65 Representation 44

46. BÀI GIẢNG 2: HƯỚNG DẪN SỬ DỤNG EVIEWS 6.0 ThS Phùng Thanh Bình ptbinh@ueh.edu.vn 2000 1500 1000 30 500 20 10 0 0 -10 -20 -30 55 60 65 70 75 80 85 90 95 Residual Actual FittedBiến giả trong EviewsĐể đưa biến giả vào mô hình hồi qui, thay vì phải tạo racác biến này, Eviews đưa ra công thức hỗ trợ rất hữu íchnhư sau: @EXPAND(D1, D2, …) (2.23)Ví dụ sử dụng chúng tôi hồi qui biến wage theo cácbiến giáo dục, năm kinh nghiệm, giới thích, ngành xâydựng, và ngành dịch vụ như sau: 46

Huong Dan Su Dung Arduino / 2023

HƯỚ NG BẢN ARDUINO NG DẪ DẪN SỬ  SỬ  DỤNG  DỤNG CƠ BẢN

TP.HCM, Tháng 5, Năm 2014.

MỤC LỤC: Lờ i nói đầu. đầu. Chương 1: Tổng Tổng quan về về Arduino Uno. ……………………… …………………………………….. ……………………………. …………………………. ………….. 1 1. Tổng quan. ……………………………. …………………………………………… ……………………………. ……………………………. …………………………….. ………………………. ………. 1 …………………………………………… ……………………………. ……………………………. …………………. ….. 2 2. Sơ đồ chân đồ chân củ của Arduino. ……………………………. Chương 2: Cài đặt chương trình Arduino IDE và Driver cho Arduino ………………….. ………………….. 4 …………………………………………… ……………………………. …………………. ….. 4 1. Cài đặt chương trình Arduino IDE ……………………………. …………………………………………. ……………………………. ……………………………. …………………………….. ……………………. ……. 5 2. Cài đặt đặt Driver ………………………….. …………………………………………… ……………………………. ……………………………. …………………………….. ……………………. ……. 7 3. Arduino IDE ……………………………. Chương 3: Hướ ng ng dẫn dẫn cài đặt đặt bả bản mô phỏ phỏng Arduino trên Proteus…………………….. ……………………. 11 Chương 4: Giao tiếp tiế p Arduino vớ  vớ i mộ một số số linh kiện kiện điện điện tử  tử . …………………………… ………………………………….. ……..13 …………………………………………. ……………………………. ……………………………. ……………….. … 13 1) Project 1: Led nhấ nhấp nháy. ………………………….. 2) Project 2 : Đèn sáng khi nhấn nhấ n phím. ………………………….. …………………………………………. ……………………………. ……………….. … 18 …………………………… 21 3) Project 3 : Led sáng dầ d ần từ  từ led led 1 đến led 10 và ngượ c lạ lại. ……………………………. 4) Project 4 : Led sáng dầ d ần từ  từ led led 1 đến led 10 và ngượ c lạ lại thờ  thờ i gian delay thay đổi đượ c. ………………………………………….. ……………………………. ……………………………. ……………………………. ……………………………. ……………….. … 24 c. …………………………… ……………………………………….. ………….. 27 5) Project 5: Điều Điều khiể khiển tốc tốc độ động cơ bằng bằng PWM. …………………………… Điề u khiển bằng L293D. ……………………………. …………………………………………… …………………. ….. 31 6) Project 6 : Điều khiển động cơ bằng …………………………………………… …………………. ….. 34 7) Project 7: Giao tiế ti ếp Arduino vớ  vớ i LCD 16×2. ……………………………. …………………………………………… …………………………….. ………………….. ….. 47 8) Project 8: Giao tiế ti ếp vớ  vớ i máy tính. ……………………………. 9) Project 9. Đo nhiệt độ môi trườ ng ng dùng LM35D hiể hiển thị thị LCD và Serial …………………………………………… ……………………………. ……………………………. ……………………………. ……………………………. ……………….. … 49 Monitor. ……………………………. ……………………………………….. …………..54 10) Project 10: Giao tiế ti ếp Arduino vớ  vớ i Servo motor. …………………………… Tài liệ liệu tham khả khảo. …………………………… ………………………………………….. ……………………………. ……………………………. …………………………….. ………………….. ….. 56

Lờ i Nói Đầ Đầu. u. Arduino đã và đang đượ c sử dụng r ất r ộng rãi trên thế giớ i,i, và ngày càng chứng tỏ

đượ c sức mạnh của chúng thông qua vô số ứng dụng độc đáo của ngườ i dùng trong cộng đồng nguồn mở . Arduino thực sự đã gây sóng gió trên  thị trường ngườ i dùng trên toàn thế giới trong vài năm gần đây , số lượng ngườ i dùng cực lớn và đa dạng với trình độ tr ải r ộng từ bậc phổ thông lên đến đạ i học đã làm cho ngay cả  những ngườ i tạo ra chúng phải ngạc nhiên về mức độ phổ biến.Tuy nhiên tại Việt Nam Arduino vẫn còn chưa đượ c biết

“HƯỚ NG NG DẪ DẪN SỬ  SỬ  DỤNG  DỤNG CƠ BẢN BẢN ARDUINO”. ARDUINO”. Trong tài liệu này cung cấ p cho bạn ng kiến thức cơ  b  bản nhất về Arduino cũng như các ứng dụng thực tế của nó. đọc một lượ ng Tài liệu gồm có các nội dung sau:

Chương 1: Tổ ng ng quan về  Arduino  Arduino Uno. Chương 2: Chương 2: Cài đặt chương trình Arduino IDE và Driver cho Arduino. Chương 3: Hướ ng ẫn cài đặt bản mô phỏng Arduino trên Proteus. ng d ẫn Chương 4: Giao tiế  p Arduino vớ i một số  linh ử.   linh kiện điện t ử  Khi biên soạn, tác giả đã tham khảo một số tài liệu nướ c ngoài để tài liệu vừa đảm  bảo về mặc nội dung vừa có thể tiế p cận đượ c vớ i bạn đọc. Khi viết tác giả đã có gắng để tài liệu đượ c hoàn chỉnh nhất song chắc chắn không tránh khỏi sai sót, vì v ậy r ất mong nhận đượ c sự góp ý của bạn đọc. Mọi ý kiến đóng góp xin liên hệ: [email protected]

Tác giả giả SV: NGUYỄ N TRUNG TÍN

Chương 1: Tổng quan về về Arduino Uno. 1. Tổng quan. Arduino thật ra là một bo mạch vi xử lý được dùng để  lập trình tương tác vớ i các thiết bị phần cứng như cảm biến, động cơ, đèn hoặ c các thiết bị khác. Đặc điểm nổi bật của Arduino là môi trườ ng ng phát triển ứng d ụng c ực k ỳ d ễ s ử d ụng, vớ i một ngôn ngữ lậ p trình có thể học một cách nhanh chóng ngay cả với ngườ i ít am hi ểu v ề điện t ử và lập trình. Và điề u làm nên hiện tượ ng ng Arduino chính là mức giá r ất thấ p và tính chất nguồn mở  t từ phần cứng tớ i phần mềm. Arduino Uno là sử dụng chip Atmega328. Nó có 14 chân digital I/O, 6 chân đầ u vào (input) analog, thạch anh dao động 16Mhz. Một số thông số k ỹ thuật như sau : Chip

ATmega328

Điện áp cấp nguồn

5V

Điện áp đầu vào (input) (kiến 7-12V nghị ) Điện áp đầu vào (giới hạn)

6-20V

Số chân Digital I/O

14 (có 6 chân điều chế độ rộng  xung PWM)

Số chân Analog (Input )

6

DC Current per I/O Pin

40 mA

DC Current for 3.3V Pin

50 mA

Flash Memory

32KB (ATmega328) với 0.5KB sử dụng  bootloader

SRAM

2 KB (ATmega328)

EEPROM

1 KB (ATmega328)

Xung nhịp HỌC VIỆ N HÀNG KHÔNG

16 MHz SV: NGUYỄ N TRUNG TÍN

1

2. Sơ đồ chân đồ chân củ của Arduino.

 Hình 1: Arduino Arduino Uno.

a) USB (1). Arduino sử dụng cáp USB để giao tiế p vớ i máy tính. Thông qua cáp USB chúng ta có thể Upload chương trình cho Arduino hoạt động, ngoài ra USB còn là nguồn cho Arduino.  b)  Nguồn ( 2 và 3 ). Khi không sử dụng USB làm nguồn thì chúng ta có thể sử dụng nguồn ngoài thông qua jack cắm 2.1mm ( cực dương ở  gi  giửa ) hoặc có thể sử dụng 2 chân Vin và GND để cấ p nguồn cho Arduino. Bo mạch hoạt động v ớ i nguồn ngoài ở điệ   20 volt. Chúng ta có thể c ấ p ở  điện áp từ 5  –  20 một áp lớn hơn tuy nhiên chân 5V sẽ  có mực điện áp lớn hơn 5 volt. Và nế u sử dụng nguồn lớn hơn 12 volt thì sẽ  có hiện tượ ng ng nóng và làm hỏng bo mạch. Khuyết cáo các bạn nên dùng nguồn ổn định là 5 đến dướ i 12 volt.

HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

2

Chân 5V và chân 3.3V (Output voltage) : các chân này dùng để lấy nguồn ra từ ngu  nguồn

mà chúng ta đã cung cấp cho Arduino. Lưu ý : không đượ c cấ p nguồn vào các chân này vì sẽ làm hỏng Arduino. GND: chân mass. c) Chip Atmega328. Chip Atmega328 Có 32K bộ nhớ  flash  flash trong đó 0.5k sử dụng cho bootloader. Ngoài ra còn có 2K SRAM, 1K EEPROM. d) Input và Output ( 4, 5 và 6). Arduino Uno có 14 chân digital v ớ i chức năng input và output sử dụng các hàm  pinMode(), digitalWrite() digitalWrite() và digitalRead() để điều khiển các chân này tôi s ẽ đề cậ p chúng

 các phần sau. ở  các

Cũng trên 14 chân digital này chúng ta còn mộ t số chân chức năng đó là: Serial : chân 0 (Rx ), chân 1 ( Tx). Hai chân này dùng để  truyền (Tx) và nh ận (Rx) dữ liêu nối ti ế p TTL. Chúng ta có th ể s ử dụng nó để giao tiế p vớ i cổng COM của một số thiết bị hoặc các linh kiện có chuẩn giao tiế p nối tiế p. PWM (pulse width modulation): các chân 3, 5, 6, 9, 10, 11 trên bo mạch có dấu “~” là các chân PWM chúng ta có th ể s ử d ụng nó để điều khiển t ốc độ động c ơ, độ sáng của

đèn… SPI : 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK), các chân này h ỗ tr ợ  ợ giao  giao tiế p theo chuẩn SPI. I2C: Arduino hỗ tr ợ  ợ giao  giao tiế p theo chuẩn I2C. Các chân A4 (SDA) và A5 (SCL) cho  phép chúng tao giao giao tiế p giửa Arduino vớ i các linh kiện có chuẩn giao tiế p là I2C. e) Reset (7): dùng để reset Arduino. HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

3

Chương 2: Cài đặt chương trình Arduino IDE và v à Driver cho Arduino 1. Cài đặt chương trình Arduino IDE Các bạn truy cậ p vào trang web web http://arduino.cc/en/Main/Software và tải về chương trình Arduino IDE phù hợ  p vớ i h ệ điều hành của máy mình bao gồm Windown, Mac OS hay Linux. Đối vớ i Windown có bản cài đặt (.exe) và bản Zip, đối vớ i Zip thì chỉ cần giải nén và chạy chương trình không cần cài đặt. Sau khi cài đặt xong thì giao diện chương trình như sau:

Hình 2: Arduino IDE

HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

4

2. Cài đặt đặt Driver Sử dụng cáp USB k ết nối Arduino vớ i máy tính, lúc này bạn sẽ thấy đèn led power của bo sáng. Máy tính sẽ nhận dạng thiết bị và bạn sẽ nhận đượ c thông báo:

“Device driver software was not successfully installed”

Hình 4: Device Manager.

HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

5

HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

6

3. Arduino IDE Arduino IDE là nơi để soạn thảo code, kiểm tra lỗi và upload code cho arduino

Hình 7: Arduino IDE. a) Arduino Toolbar: có một số button và chức năng của chúng như sau : Hình 8: Arduino Toolbar. 

Verify : kiểm tra code có lỗi hay không

Upload: nạp code đang soạn thảo vào Arduino

  New, 

Open, Save : Tạo mớ i,i, mở  và  và Save sketch

Serial Monitor : Đây là màn hình hiể n thị dữ liệu từ Arduino gửi lên máy tính

 b) Arduino IDE Menu: Hình 9: IDE Menu HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

7

File menu:

Hình 10: File menu. Trong file menu chúng ta quan tâm tớ i mục Examples đây là nơi chứa code mẫu ví dụ như: cách sử dụng các chân digital, analog, sensor …

SV: NGUYỄ N TRUNG TÍN

8

Edit menu:

Hình 11: Edit menu 

Sketch menu

Hình 12: Sketch menu Trong Sketch menu : 

Verify/ Compile : chức năng kiểm tra lỗi code.

Show Sketch Folder : hi ển thị nơi code được lưu.

Add File : thêm vào một Tap code mớ i.i.

Import Library : thêm thư việ n cho IDE

HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

9

Tool memu:

Hình 13: Tool menu. Trong Tool menu ta quan tâm các mục Board và Serial Port Mục Board : các bạn cần phải lựa chọn bo mạch cho phù hợ  p vớ i loại bo mà bạn sử dụng nếu là Arduino Uno thì phải chọn như hình:

Hình 14: Chọn Board  Nếu các bạn s ử dụng loại bo khác thì phải chọn đúng loại bo mà mình đang có nếu sai thì code Upload vào chip sẽ bị lỗi. Serial Port: đây là nơi lựa chọn cổng Com của Arduino. Khi chúng ta cài đặt driver thì máy tính sẽ hiện thông báo tên cổng Com của Arduino là bao nhiêu, ta chỉ việc vào Serial Port ch ọn đúng cổng Com để nạ p code, nếu chọn sai thì không th ể nạ p code cho Arduino đượ c. c. HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

10

Chương 3: 3: Hướ ng ng dẫn dẫn cài đặt đặt bả bản mô phỏ phỏng Arduino trên Proteus. Để mô phỏng đượ c Arduino trên proteus thì chúng ta cần phải download thư viện arduino cho proteus. Để có đượ c thư viên này các bạn cần truy cậ p vào trang web: http://blogembarcado.blogspot.c http://blogem chúng tôi om/search/label/Proteus Proteus

Hình 15: Thư viện mô phỏng Arduino. Sau khi download về các bạn chép 2 file chúng tôi và chúng tôi vào thư mục: Proteus 7: C:Program Files (hoặc x86) Labcenter Electronics ElectronicsProteus Proteus 7 Professi ProfessionalLIBRARY onalLIBRARY Proteus 8: C:Program

Files

(hoặc

x86)

Labcenter

ElectronicsProteus

8

 professionalDataLIBRARY  professiona lDataLIBRARY

ợ  55 loại board Arduino khác nhau trong đó gồm có Arduino Trong thư viện này hổ tr ợ  Uno, MEGA, NANO, LILYPAD và UNO SMD và một cảm biến siêu âm Untrasonic.

HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

11

Sau khi chép xong chúng ta khở i động Proteus lên vào th ư viện linh kiện bằng cách  bấm phím P và gõ t ừ khoá là ARDUINO chúng sẽ hiện ra danh sách các board hi ện có ở 

đây tôi chọn Arduino Uno.

Hình 16: Mô phỏng Arduino bằng Proteus. Lưu ý chúng ta cần phải cấ p nguồn vào 2 chân 5V và Gnd trên mạch như hình trên.

HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

12

để mô phỏng. 

Sơ đồ mạch:

Hình 17: Led nhấ p nháy. 

Code chương trình. int ledPin = 9; void setup() {  pinMode(ledPin,  pinMode(ledPin, OUTPUT); OUTPUT);  } void loop() { digitalWrite(ledPin, digitalWrite(ledPin, HIGH); delay(1000); digitalWrite(ledPin, digitalWrite(ledPin, LOW); delay(1000);  }

SV: NGUYỄ N TRUNG TÍN

để kiểm tra lổi. 13

Hình 19: Check compilation. Sau đó tiế p tục bấm HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

14

Chương trình sẽ tự động built một file hex đượ c lưu ở đườ  ng dẫn như hình dướ i ở đườ ng

Hình 21: Add file Hex cho Proteus. Bấm vào vị trí số 1 và chọn nơi lưu file hex ở  trên  trên chọn tiế p Open, OK và Play. Play. Các bạn sẽ thấy led nhấ p nháy tắt và sáng thờ i gian delay là 1s.

HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

15

Giải thích chương trình. int ledPin = 9;

Khai báo một giá tr ị biến integer là ledPin = 9. void setup() {  pinMode(ledPin,  pinMode(ledPin, OUTPUT); OUTPUT); }

Trong Arduino sketch cần phải có hàm setup() và loop() n ếu không có thì chương trình báo lỗi. Hàm Setup() chỉ chạy một lần k ể t ừ khi bắt đầu chương trình. Hàm này có chức năng thiết lậ p ch chế độ vào, ra cho các chân digital hay tốc độ baud cho giao tiế p Serial… Cấu trúc của hàm pinMode() là như sau:  pinMode(pin,Mode);  pinMode(pin,Mode);  pin : là vị trí chân digital.  Mode: là chế độ vào ( INPUT), ra (OUTPUT).

Lệnh tiế p theo.  pinMode(ledPin, OUTPUT);

Lệnh này thiết lậ p chân số 9 trên board là chân ngõ ra ( OUTPUT). Nếu không khai  báo “ int ledPin = 9; ” thì bạn có thể viết cách sau nhưng ý ngh ĩ a không thay đổi:  pinMode(9, OUTPUT); OUTPUT);

Bắt buộc khai báo một hàm loop() trong Arduino IDE. Hàm này là vòng lặ p vô hạn void loop() { digitalWrite(ledPin, digitalWrite(ledPin, HIGH); delay(1000); digitalWrite(ledPin, digitalWrite(ledPin, LOW); HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

16

delay(1000);  }

Tiế p theo ta s ẽ phân tích hàm digitalWrite( digitalWrite( ledPin, HIGH); lệnh này có ý ngh ĩ a là xuất ra chân digital có tên là ledPin ( chân 9) mức cao (  HIGH ), ), mức cao tướ ng ng ứng là 5 volt. delay(1000);

Lệnh này tạo một khoảng tr ễ vớ i thờ i gian là 1 giây. Trong hàm delay() của IDE thì ng ứng vớ i 1 giây. 1000 tươ ng digitalWrite(ledPin, digitalWrite(ledPin, LOW);

Cũng giống như digitalWrite( ledPin, HIGH); lệnh này xuất ra chân ledPin mức thấ p (LOW) tức là 0 volt. Và tiế p tục là một hàm delay().  Như v ậy chúng ta có thể thấy chương trình sẽ thực hiện tắt sáng led liên tục không ngừng tr ừ khi ta ngắt nguồn.

HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

17

2) Project 2 : Đèn sáng khi nhấn phím. 

ơ đồ mạch: Sơ đồ

Hình 22: Đèn sáng khi nhấn phím 

Code chương trình : const int buttonPin = 2; const int int ledPin = 13; int buttonState = LOW; void setup() {  pinMode(ledPin,  pinMode(ledPin, OUTPUT); OUTPUT);  pinMode(buttonPin,  pinMode(buttonPin, INPUT); INPUT);

}

void loop(){ buttonState = digitalRead(buttonPin); digitalRead(buttonPin); if (buttonState == HIGH) { HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

18

digitalWrite(ledPin, digitalWrit e(ledPin, HIGH);

}

else { digitalWrite(ledPin, LOW);  }} 

Giải thích chương trình : Trướ c tiên ta khai báo hai biến để lưu tr ữ vị trí chân của phím nhấn và led : const int buttonPin = 2; const int int ledPin = 13;

Phím nhấn sẽ ở  v  vị trí chân số 2 và led chân số 13. Ta khai báo một biến trang thái của phím nhấn là int buttonState = LOW; Trong hàm setup() là khai chế độ (Mode) cho chân button và chân led. Chân button là chân ngõ vào và chân led là chân ngõ ra.  pinMode(ledPin,  pinMode(ledPin, OUTPUT); OUTPUT);  pinMode(buttonPin,  pinMode(buttonPin, INPUT); INPUT);

Trong hàm loop() ta có câu lệnh đầu tiên là : buttonState = digitalRead(buttonPin); digitalRead(buttonPin);

Câu lệnh này có ngh ĩ a là gán giá tr ị đọc đượ c từ chân button (chân 2) cho biến buttonState.. buttonState sẽ có giá tr ị 0 nếu như button không đượ c nhấn và có giá tr ị 1 nếu

đượ c nhấn. Bằng cách sử dụng hàm digitalRead() ta có thể kiểm tra đượ c các chân digital  mức cao hay thấ p. đang ở  m Sau khi đọc đượ c giá tr ị có ở  chân  chân buttonPin ( chân 2) ta kiểm tra xem là button có nhấn hay không. HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

19

 Nếu có tức là buttonState =HIGH thì lúc này ta bật led bằng lệnh digitalWrite() if (buttonState == HIGH) { digitalWrite(ledPin, digitalWrite(ledPin, HIGH);

}

 Ngượ c lại thì ta một lần nửa sử dụng hàm digitalWrite() để tắt led else { digitalWrite(ledPin, LOW);  }

HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

20

3) Project 3 : Led sáng dần từ led ừ led 1 đến led 10 và ngượ c lại. 

ơ đồ mạch. Sơ đồ

Hình 23: Led sáng dần từ led 1 đến led 10 và ngượ c lại. 

Code chương trình. byte ledPin[] = {4, 5, 6, 7, 8, 9, 10, 11, 12, 13}; int direction = 1; int currentLED = 0; void setup() {  for (int x=0; x HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

21

void loop() {  for (int x=0; x if (currentLED == 9) {direction = -1;} if (currentLED == 0) {direction = 1;} delay(500);  } 

Giải thích chương trình. Trong Project này chúng ta s ử dụng 10 chân digital để điều khiển 10 led, để cho

ở đây tôi sử dụng mảng 1 chiều gồm 10 phần t ử trong đó chứa chương trình ngắn gọn thì ở đâ 10 vị trí chân led mà ta s ử dụng trong project byte ledPin[] = {4, 5, 6, 7, 8, 9, 10, 11, 12, 13};

Tiế p tục khai báo 2 biến integer là : int direction = 1; int currentLED = 0;

Trong hàm setup() tôi sử dụng một vòng lặ p để định ngh ĩ a mode cho các chân led. Tôi ngh ĩ  là  là không khó để hiểu đượ c các câu lệnh này. Tiế p theo là hàm loop(), đầu tiên tôi tắt tất cả các led bằng các câu lệnh:  for (int x=0; x SV: NGUYỄ N TRUNG TÍN

22

Sau đó cho sáng led đầu tiên bằng câu lệnh : digitalWrite(ledPin[curre digitalWrite(ledPin[currentLED], ntLED], HIGH);

Vì ta đã khai báo currentLED = 0 nên mãng sẽ truy xuất phần tử đầu tiên trong mãng có giá tr ị là 4 vì thế led ở  v  vị trí chân digital số 4 sẽ sáng. currentLED += direction;

Tăng currentLED lên 1 đơn vị ( direction =1 ). Vòng lặ p tiế p theo sẽ là led ở  chân  chân digital 5 sáng và cứ như thế cho đến led ở  chân  chân số 13 sáng, thì lúc này currentLED == 9, câu lệnh “ if (currentLED == 9) {direction = -1;} ” sẽ thực hiện và led sẽ sáng ngượ c lại từ led 10 xuống led thứ 1. Hai câu lệnh : if (currentLED == 9) {direction = -1;} if (currentLED == 0) {direction = 1;}

dùng để quy định chiều sáng của led là tăng dần hay giảm dần. Nếu là Led th ứ 10 sang thì tiế p theo sẽ giảm xuống led thứ 9 và ngượ c lại nếu led thứ 0 sang thì chu k ỳ tiế p theo led 1 sẽ sáng.

HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

23

4) Project 4 : Led sáng d ần từ led ừ  led 1 đến led 10 và ngượ c lại thờ i gian c. delay thay đổi đượ c. 

Sơ đồ ơ đồ mạch : Trong project này hoàn toàn giống project 3 chỉ thêm một biến tr ở   dùng để điều ch chỉnh ở dùng

thờ i gian delay cho chương trình

c. Hình 24: Led sáng dần từ led 1 đến led 10 thời gian delay thay đổi đượ c. 

Code chương trình. int ledPin[] = {4, 5, 6, 7, 8, 9, 10, 11, 12, 13}; int direction = 1;

HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

24

int currentLED = 0; int potPin = 0; unsigned long changeTime; void setup() {  for (int x=0; x if (currentLED == 9) {direction = -1;} if (currentLED == 0) {direction = 1;} delay(delayvalu);  } 

Giải thích chương trình. Chương trình ta chỉ thêm và thay đổi một vài câu lệnh mà thôi ngoài ra không khác

gì nhiều so vớ i project 3, các câu l ệnh đó như sau : int potPin = 0 ; int delayvalu= analogRead(potPin);

HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

25

delay(delayvalu);

Đầu tiên chúng ta khai báo một biến chứa vị trí chân biến tr ở  ở k   k ết nối đó là vị trí A0 int potPin = 0 ;

Đọc giá tr ị từ chân analog A0 bằng câu lệnh analogRead(potPin) và gán nó cho biến delayvalu. Arduino có 6 chân đầu vào analog đánh dấu từ A0 đên A5 vớ i 10 bit chuyển đổi

từ analog sang digital (ADC). Ngh ĩ a là chân analog có thể đọc đượ c các giá tr ị điện áp từ 0

đến 5 volt tương ứng vớ i các số integer từ 0 ( 0 volt ) đến 1023 ( 5 volt ). Trong project này chúng ta cần thiết lậ p th ờ i gian delay bằng cách điều chỉnh biến tr ở  ở.  Ta sử dụng câu lệnh delay(delayvalu) để tạo thờ i gian tr ễ. Nếu ta điều chỉnh biến tr ở  ở  sao cho điện áp đầu vào chân analog là 5 volt thì delayvalu sẽ có giá tr ị là 1023 ( hơn 1

ở ta giây), nếu là 2,5 volt thì delayvalu sẽ là 511. Các bạn thử điều chỉnh biến tr ở   ta sẽ thấy thờ i gian delay thay đổi hoặc là nhanh dần hoặc là chậm dần. Lưu ý : đối vớ i các chân analog chúng ta không cần thiết lậ p chế độ vào ra bằng hàm  pinMode như các chân digital. Mặc định các chân analog là input.

HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

26

5) Project 5: Điều khiển tốc độ động cơ bằng PWM. 

Sơ đồ Sơ đồ mạch

Hình 25: Điều khiển tốc độ động cơ . 

Code chương trình. int potPin = 0; int transistorPin = 9; int potValue = 0; void setup() {  pinMode(transistorPin,  pinMode(transistorPin, OUTPUT);} OUTPUT);} void loop() {  potValue = analogRead(potP analogRead(potPin) in) / 4; analogWrite(transistorP analogWrite(transistorPin, in, potValue);  }

HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

27

Giải thích chương trình.  Như trong sơ đồ ơ đồ mạch ta thấy biến tr ở đượ  ở đượ c nối vớ i chân A0, transistor đượ c nối vớ i

chân số 9 thông qua điện tr ở  ở 1k.  1k. Như vậy ta khai báo 2 biến chứa vị trí chân cho biến tr ở  ở  và transistor. int potPin = 0; int transistorPin = 9;

Biến integer potValue chứa giá tr ị đọc đượ c từ chân A0. int potValue = 0

ở đây là nếu chúng ta không k ết nối transistor điều khiển động cơ  Một câu hỏi đặt ra ở đâ vào chân số 9 mà thay vào đó là chân số 1 hoặc 2 để điều khiển tốc độ động cơ  thì  thì có đượ c không ?. Câu tr ả lờ i là Không. Vậy tại sao Không ? Tôi sẽ tr ả lờ i câu hỏi này sau. Nhưng trướ c hết tôi nói về PWM. PWM (pulse width modulation) là phương pháp điều chế dựa trên sự thay đổi độ r ộng của chuổi xung dẫn đến sự thay đổi điện áp ra.

Để tạo ra đượ c PWM trên Arduino thì chúng ta sử dụng lệnh analogWrite(Pin, Value);

Tr ong ong đó:  Pin: là vị trí chân,

đối vớ i Arduino Uno thì chỉ có các chân 3, 5, 6, 9, 10 & 11 mớ i có chức năng tạo PWM. Vậy chúng ta có thể tr ả lờ i đượ c câu hỏi bên trên, các chân digital còn lại của có thể đọc hoặc xuất 2 giá tr ị là 0 và 1 mà thôi. Value: Giá tr ị nằm trong khoảng 0 đến 255.

Để hiểu rõ hơn về PWM tôi sẽ minh hoạ qua ví dụ sau.  Nếu tôi sử dụng lệnh analogWrite(transistorP   chân 9 ( analogWrite(transistorPin, in, 127); thì dạng xung ở  chân transistorPin transistorPin = 9) sẽ như hình dướ i và giá tr ị trung bình ngõ ra s ẽ là 2,5V (50% ). HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

28

Hình 26: PWM 50%.  Nếu Value = 64 (hay 25%) thì d ạng xung như sau:

Hình 27: PWM 25%. Value = 229 (hay 90%) thì d ạng xung sẽ là :

Hình 28: PWM 90%. Từ ví dụ trên ta thấy sự thay đổi độ r ộng của chuổi xung dẫn đến sự thay đổi điện áp ra. Ta cũng thấy r ằng điện áp trên motor cũng thay đổi tuyến tính theo sự thay đổi điện áp ngõ ra trên chân 9. Tức là nếu điện áp trung bình bình trên chân 9 là 2,5 volt (50% ) thì điện áp trên hai đầu motor là 6 volt ( ngu ồn motor motor là 12 volt ). Quay lại chương trình ta cần quan tâm tớ i một câu lệnh đó là:  potValue = analogRead(potP analogRead(potPin) in) / 4; HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

29

Chúng ta cần phải chia giá tr ị đọc đượ c cho 4 vì giá tr ị analog sẽ nằm trong khoảng 0 (0 volt ) đế n 1023 (5 volt ), nhưng giá tr ị cần xuất ra ngoài chân 9 lại nằm trong khoảng

ở đây. 0 đến 255 đó chính  chính là lý do tại sao có chia 4 ở đâ Và câu lệnh cuối cùng là tạo PWM trên chân 9 để điều khiển tốc đố động cơ . analogWrite(transistorP analogWrite(transistorPin, in, potValue);

 Nếu như đã điều kiển đượ c tốc độ động cơ  b  bằng PWM r ồi thì việc điều khiển độ sáng của Led hay đèn đối vớ i các bạn bay giờ  là  là chuyện quá đơn giản. Các bạn chỉ cần nối chân số 9 v ớ i một Led có điện tr ở  ở  hhạn dòng là 220 ohm và code chương trình hoàn toàn giống như điều khiển động cơ . L ưu ý là khi mô ph ỏng các bạn s ẽ không thấy đượ c led thay đổi

độ sáng mà chỉ thấy nhấ p nháy nguyên nhân nhân là do phần mềm proteus không đáp ứng k ị p  p sự thay đổi của các xung PWM. Nhưng khi làm th ực t ế các bạn s ẽ th ấy đượ c sự thay đổi độ sáng của Led rõ r ệt.

HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

30

6) Project 6 : Điều khiển động cơ bằ ng L293D. 

Sơ đồ Sơ đồ mạch:

Hình 29: Điều khiển động cơ  b  bằng L293D. 

Code chương trình #define switchPin switchPin 2

9

#define potPin 0

SV: NGUYỄ N TRUNG TÍN

31

 }

void loop() {  Mspeed = analogRead(potP analogRead(potPin)/4; in)/4; analogWrite (speedPin, Mspeed); if (digitalRead(switchP (digitalRead(switchPin)) in)) { digitalWrite(motorPin1, LOW); digitalWrite(motorPin2, digitalWrite(motorPin2, HIGH); } else { digitalWrite(motorPin1, HIGH); digitalWrite(motorPin2, LOW);  }  } 

Giải thích chươ ng ng trình:

Code của project này hoàn toàn đơn giản. Trướ c tiên ta định ngh ĩ a các chân sẽ sử dụng trên arduino.

ắ c #define switchPin switchPin 2

9

ở n #define potPin 0

Tiế p theo trong setup() ta thiết lậ p chế độ vào, ra cho các chân v ừa định ngh ĩ a. a.  pinMode(switchPin,  pinMode(switchPin, INPUT); INPUT);  pinMode(motorPin1,  pinMode(motorPin1, OUTPUT); OUTPUT);  pinMode(motorPin2,  pinMode(motorPin2, OUTPUT); OUTPUT); HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

32

 pinMode(speedPin,  pinMode(speedPin, OUTPUT) OUTPUT)

Trong vòng loop() chúng ta đọc giá tr ị từ biến tr ở   k ết nối vớ i chân A0 và gán nó cho ở k   Mspeed :  Mspeed = analogRead(potP analogRead(potPin)/4; in)/4;

Thiết lậ p tốc độ cho động cơ  b  bằng câu lệnh: analogWrite (speedPin, Mspeed);

Kiểm tra xem công tắc có đượ c bật hay không, nếu có thì thiết lậ p motorPin1 =  LOW và motorPin2 = HIGH ta sẽ thấy động cơ quay ơ quay ngượ c chiều kim đồ ng hồ. if (digitalRead(switchP (digitalRead(switchPin)) in)) { digitalWrite(motorPin1, digitalWrite(motorPin1, LOW); digitalWrite(motorPin2, digitalWrite(motorPin2, HIGH); }

và nếu công tắc không đượ c bật thì motor sẽ quay cùng chiều kim đồng hồ: else { digitalWrite(motorPin1, digitalWrite(motorPin1, HIGH); digitalWrite(motorPin2, LOW);  }

HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

33

7) Project 7: Giao ti ếp Arduino vớ i LCD 16×2. Giao tiế p giữa Arduino và LCD 16×2 r ất đơn giản bở i vì Arduino IDE đã có sẵn thư viện cho LCD là LiquidCrystal.h,  LiquidCrystal.h, công việc của chúng ta là hiểu và biết cách sử dụng thư viện này mà thôi. 

ơ đồ mạch: Sơ đồ

Hình 30: giao tiế p vớ i LCD 16×2. 

Code chương trình : #include  LiquidCrystal  LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

34

 scrollLeftDemo();  scrollLeftDemo();  scrollRightDemo();  scrollRightDemo(); cursorDemo(); createGlyphDemo();  } void introduce(){ lcd.clear(); lcd.setCursor(0,0); lcd.print(“HV HANG KHONG VN”); lcd.setCursor(1,1); lcd.print(“HD SD ARDUINO”); delay (1000);  for(int x=0; x SV: NGUYỄ N TRUNG TÍN

35

 for(int x=0; x SV: NGUYỄ N TRUNG TÍN

36

lcd.setCursor(7,0); lcd.print(“Beginning”); lcd.setCursor(9,1); lcd.print(“Arduino”); delay(500);  for(int x=0; x HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

37

void cursorDemo() { lcd.clear(); lcd.cursor(); lcd.cursor();

SV: NGUYỄ N TRUNG TÍN

38

 B01110,  B00000  };

ữ “ơ” byte char2[8] = { ữ “ô” ra màn hình lcd.write(byte(0)); lcd.write(byte(0));

HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

39

Giải thích chương trình:

Đầu tiên chúng ta khai báo thư viện mà chúng ta sẽ sử dụng để điều khiển LCD. Như đã nói ở  trên chúng ta sẽ sử dụng thư viện có tên là LiquidCrystal.h.  LiquidCrystal.h. Có r ất nhiều thư viện và code mẫu cho những loại LCD khác, bạn có thể  truy cậ p vào trang web http://www.arduino.cc/playgrou http://www.ard chúng tôi nd/Code/LCD để tải về sử dụng.

Để khai báo thư viện cho LCD hay bất cứ thư viện nào khác ta dùng câu l ệnh #include

Trong trườ ng ng hợ  p này ta khai báo là : #include

Tiế p theo tạo một đổi tượ ng ng và gán chân cho nó bằng câu lệnh :  LiquidCrystal  LiquidCrystal Object(RS, E, E, D4, D5, D6, D7);

 Như vậy trong đoạn code trên tôi đã khai báo một đối tượ ng ng có tên là lcd  ( các bạn có thể thay thế lcd  b  bằng những từ khác mà các bạn muốn ) và chân 12 của Arduino nối vớ i chân RS, chân 11 nối vớ i E và các chân 5 đến chân 2 lần lượ t nối vớ i D4 đến D7 trên LCD 16×2.  LiquidCrystal  LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

Trong hàm  setup() chúng ta cần khai báo loại LCD mà chúng ta s ử d ụng. Vì trong

ợ  r  thư viện LiquidCrystal.h r ất nhiều loại LCD chẳng hạn như 16×2, 16×4, 20×2, 20×4,  LiquidCrystal.h hỗ tr ợ  GLCD….Ở đây chúng ta sử dụng 16×2 thì ta khai báo. lcd.begin(16,2);

Trong loop() chúng ta có 8 chương trình con, và tôi sẽ giải thích từng chương trình con. HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

40

Chương trình con thứ 1: introduce().

Đây là chương trình giớ i thiệu. 

Chương trình con thứ 2: basicPrintDemo() Trong chương trình con này chúng ta sẽ điều khiển sao cho LCD hiển thị dòng chứ

mà ta mong muốn.

Đầu tiên chúng ta xoá tất cả màn hình bằng câu lệnh: lcd.clear();

Chúng ta cần lưu ý đối tượ ng ng lcd : nếu như ban đầu chúng ta khai báo đổi tượ ng ng là  LCD16x2 thì chúng ta phải viết câu lệnh là  LCD16x2.clear().  LCD16x2.clear().

Để hi  h iển th ị một dòng ký tự b ất k ỳ lên màn hình thì ta dùng câu lệnh print() c ụ thể trong trườ ng ng hợ  p này là: lcd.print(“HV HANG KHONG”);

Các ký tự bên trong ngoặc kép sẽ đượ c hiển thị lên màn hình, nếu tổng các ký tự lớ n

ở đi sẽ không đượ c hiển thị lên màn hình. hơn 16, thì các ký tự từ thứ 17 tr ở đ 

Chương trình con thứ 3: displayOnOffDemo() Trong chương trình con này hướ ng ng dẫn cho chúng ta các câu l ệnh chức năng bật và

tắt màn hình. Ta cần quan tâm tớ i 2 câu lệnh sau. lcd.nodisplay();

Câu lệnh này có chức năng tắt màn hình hiển thị. lcd.display();

Câu lệnh này cho phép hiển thị màn hình. HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

41

Chương trình con thứ 4:  setCursorDemo()  setCursorDemo()

Hình 31: LCD 16×2. Chương trình con này hướ ng ng dẫn chúng ta các câu lệnh dịch chuyển vị trí con tr ỏ theo ý muốn, các câu lệnh cần quan tâm đó là: lcd.setCursor(5,0); lcd.print(“5,0”);

Dịch con tr ỏ đến cột thứ 5 hàng thứ 0. Sau đó xuất ra màn hình LCD “5,0” từ cột thứ 5 hàng 0 tr ở đi ở đi. lcd.setCursor(10,1); lcd.setCursor(10,1);

Dịch con tr ỏ đến vị trí cột 10 hàng thứ 1. Xuất ra màn hình “10,1”

Tương tự như vậy đối vơi 2 câu lệnh cuối là : lcd.setCursor(3,1); lcd.setCursor(3,1);

HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

42

Chương trình con thứ 5: scrollLeftDemo()  scrollLeftDemo() Chương trình con này sẽ dịch các ký tự đang hiển thị trên màn hình sang bên trái.

Các câu lệnh trong chương trình con này không khó, chúng ta chỉ quan tâm tớ i các câu lệnh sau:  for(int x=0; x Trong vòng lặ p chúng ta có câu lệnh: lcd.scrollDisplayLeft();

Mỗi lần ch ương trình thực hi ện câu lệnh này sẽ d ịch t ất cả các ký tự đang hiển thị trên màn hình sang bên trái 1 cột. Chúng ta có vòng lặ p 16 l ần như vậy các ký tự sẽ đượ c dịch hết về bên trái.

Hình 32: Trướ c khi dịch trái.

HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

43

Hình 33: Dịch trái lần thứ 8. Khi vòng lặ p thực hiện đượ c 16 lần thì màn hình sẽ tr ống hoàn toàn. 

Chương trình con thứ 6: scrollRightDemo()  scrollRightDemo() Hoàn toàn tương tự như  scrollLeftDemo()  scrollLeftDemo() chương trình con này s ẽ thực hiện dịch

 phải các ký tự trên màn hình. Câu lệnh cần quan tâm là: lcd.scrollDisplayRight(); 

Chương trình con thứ 7: cursorDemo() nháy. Ở phần này chúng ta sẽ tìm hiểu các câu lệnh điều khiển con tr ỏ bật, tắt và nhấ p nháy. lcd.cursor() : câu lệnh này cho phép chúng ta bật con tr ỏ.

Hình 34: Con tr ỏ LCD HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

44

lcd.noCursor(): tắt con tr ỏ lcd.blink(): nhấ p nháy con tr ỏ 

Chương trình con thứ 8: createGlyphDemo() Bây giờ  chúng   chúng ta sẽ tìm hiều cách tự tạo ra một ký tự không thuộc hệ thống mã

ASCII, chẳng hạn như các chữ cái có dấu trong hệ thống chữ cái tiếng việt như ă, â, ô,ơ …. ơ ….

Đối vớ i LCD 16×2 cứ mỗi ký tự trong một ô sẽ đượ c tạo thành từ 5×8 ô nhỏ ( 5 cột, 8 dòng)

Để tạo một ký tự thì chúng ta dùng một mãng gồm 8 phần tử, mỗi phần tử là 1 byte, nhưng chỉ sử dụng 5 bit thấ p của 1 byte để biểu diễn ký tự đó.

ữ “ô” byte happy[8] = {

ữ “ơ” byte sad[8] = { t ạo chữ “ơ”  B01110,  B00001,  B00010,  B01110,  B10001, HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

45

 B10001,  B01110,  B00000  };

Sau khi đã tạo đượ c ký tự mong muốn ta sử dụng câu lệnh: lcd.createchar(num,data);

Trong đó: num: là các chữ số tứ 0 đến 7. data: là các mãng chứa ký tự của chúng ta.

Câu lệnh này sẽ gán ký tự ta đã tạo vào một chữ số. lcd.createChar(0, lcd.createChar(0, happy); lcd.createChar(1, lcd.createChar(1, sad);

Để hiển thị một ký tự ra màn hình ta dùng câu lệnh lcd.write(data). Hiển thị chữ “ô” ra màn hình LCD. lcd.write(byte(0));

Hiển thị chữ “ơ” ra màn hình LCD lcd.write(byte(1));

HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

46

8) Project 8: Giao ti ếp vớ i máy tính. Trong phần này tôi sẽ trình bày cách để  giao tiế p giữa Arduino vớ i máy tính thông qua chuẩn giao tiế p nối tiế p không đồng bộ UART.

Điều khiển bật tắt bằng cách gửi lệnh từ máy tính. 

Sơ đồ mạch:

ở  Dùng cáp USB k ết nối Arduino vớ i máy tính. Led n ối vớ i chân 13 thông qua điện tr ở  220 ohm. 

Code chương trình: int ledpin =13; void setup() { Serial.begin(9600);  pinMode(ledpin,OUTPUT);  pinMode(ledpin,OUTPUT);  }

{

digitalWrite(ledpin,HIGH); digitalWrite(ledpin,HIGH); break;  } case ‘0’: { digitalWrite(ledpin,LOW digitalWrite(ledpin,LOW); ); break; }}} HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

47

Giải thích chương trình:  Serial monitor b ằng cách nhấ p Để có thể điều khiển đượ c led bật tắt chúng ta cần mở  Serial vào biểu tượ ng ng

:

Hình 35: Serial Monitor. Trong chương trình ta cần chú ý tớ i các câu lệnh sau: Serial.begin(9600);

Câu lệnh này dùng để kiểm tra xem có dữ liệu truyền tớ i hay không. Ngoài ra Serial.available() còn tr ả về cho chúng ta số ký tự đã đượ c truyền tớ i Arduino HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

48

char setupled = Serial.read( Serial.read(); );

Khi dữ liệu đượ c truyền tớ i Arduino thì dữ liệu sẽ đượ c lưu vào bộ nhớ đệ ớ đệm. Chúng ta khai báo biến setupled vớ i ki ểu dữ liệu char và dùng hàm Serial.read() để truy suất dữ liệu trong bộ nhớ đệ ớ đệm và lưu vào trong nó. Như vậy ký tự đầu tiên trong chuỗi ký tự đượ c truyền tớ i sẽ đượ c gán vào setupled. Dùng hàm Switch-case để kiểm tra, nếu là “1” thì sáng led, nếu là “0” thì tắt led, các trườ ng ng hợ  p còn lại thì không làm gì.

9) Project 9. Đo nhiệt độ môi trườ ng ng dùng LM35D hiển thị  LCD và Serial Monitor. 

Sơ đồ ơ đồ mạch.

Hình 36: giao tiế p vớ i LM35, LCD và Serial monitor. 

Code chương trình: #include  LiquidCrystal  LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

49

int scale = 1; int buttonPin=8;

SV: NGUYỄ N TRUNG TÍN

50

SV: NGUYỄ N TRUNG TÍN

51

Giải thích chương trình:

Tổng quan: chương trình sẽ kiểm ta mức điện áp ngõ ra của LM35 tương ứng v ớ i nhiệt độ của môi trườ ng ng hiển thị trên Lcd và Serial Monitor. Nhiệt độ của môi trườ ng ng đượ c tính bằng độ C và độ F, nếu nhấn phím thì sẽ thay đổi hiển thị là độ C hay độ F. Bắt đầu chương trình ta khai báo thư viện Lcd và định ngh ĩ a chân cũng như các biến cần dùng cho toàn bộ chương trình. #include  LiquidCrystal  LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

Trong hàm setup() chúng ta cần quan tâm tớ i câu lệnh: analogReference(INTERNAL);

Khai báo điện áp tham chiếu cho bộ chuyển đổi ADC bên trong Arduino Uno là 1,1V ( đây là giá tr ị điện áp tham chiếu nội mặc định của Arduino Uno). ng chúng ta cần lưu ý những điểm sau: Để tính toán đúng nhiệt độ môi trườ ng Bộ chuyển đổi ADC gồm 10 bit tức là 1024 mức. HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

52

Điện áp tham chiếu cho bộ chuyển đổi ADC là 1,1V. ng. Đối vớ i LM35 thì điện áp ngõ ra tuyến tính vớ i nhiệt độ của môi trườ ng. Hệ số chuyển đổi điện áp sang nhiệt độ là 10mV/10C = 0,01V/10C. Xây dựng công thức tính nhiệt độ. Ta biết: 1,1 volt (1100 mV) có 1024 mực biểu diễn, vậy 1 mức sẽ là 1,1/1024 (volt),

để chuyển đổi từ điện áp sang nhiệt độ thì ta chia tiế p cho 0,01V. Từ đây ta thấy cứ 1 mức chuyển đổi của ADC tương ứng vớ i

1,1

0

1024.0,01

C = 0.10742188 0C.

 Như vậy chúng ta chỉ cần đọc giá tr ị đầu vào ở  chân  chân A0 (giá tr ị nằm trong khoảng 0 – 1023) và gán chúng cho biến integer sensor. int sensor = analogRead(0); analogRead(0);

Để tính ra nhiệt độ chính xác chúng ta nhân giá tr ị của sensor vớ i 0.10742188. Trong chương trình con celsius(int sensor) ta có câu lệnh: int temp = sensor* 0.1074188; 0.1074188;

Trong chương trình con fahrenheit(int sensor) ta có câu lệnh chuyển đổi từ độ C sang độ F là:  float temp = ((sensor ((sensor * 0.1074188) 0.1074188) * 1.8)+32; 1.8)+32;

HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

53

10) Project 10: Giao ti ếp Arduino vớ i Servo motor. 

ơ đồ mạch Sơ đồ

Hình 37: Giao tiế p vớ i Servo motor 

Code chương trình. #include Servo servo1; void setup() {  servo1.attach(5);  servo1.attach(5);  } void loop() { int angle = analogRead(0);

HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

54

 servo1.write(angle);  servo1.write(angle); delay(15);  } 

Giải thích chương trình: Khai báo thư viện cho Servo motor bằng câu lệnh. #include

Khai báo đối tượ ng ng có tên là servo1 Trong hàm setup() ta định ngh ĩ a chân cho Servo:  servo1.attach(5)  servo1.attach(5) ;

Chân số 5 của Arduino sẽ nối vớ i chân input của Servo motor.

Đọc giá tr ị điện áp của biến tr ở  ở và  và gán nó cho biến integer angle : int angle = analogRead(0); analogRead(0);

Giá tr ị đọc đượ c từ biến tr ở  ở s  sẽ nằm trong khoảng 0 đến 1023 và góc quay của Servo từ 00 đến 1800 ta sử dụng câu lệnh : angle=map(angle, angle=map(angle, 0, 1023, 0, 180);

ở sang   sang góc quay tương ứng của Câu Lệnh này sẽ chuyển đổi từ giá tr ị của biến tr ở  Servo. Để điều khiển góc quay của Servo ta dùng câu l ệnh:  servo1.write(angle);  servo1.write(angle);

HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

55

Tài liệu tham khảo.    

Beginning Arduino – Mike McRoberts Arduino cookbook –  Michael  Michael Margolis http://arduino.cc http://blogembarcado.blogspot.com

HỌC VIỆ N HÀNG KHÔNG

SV: NGUYỄ N TRUNG TÍN

56

Huong Dan Su Dung Cheat Engine 6 2 Trong Hai Tac 2 / 2023

15 Tháng Giêng 2012 … Vua Hải Tặc by Tuoc Phan 5,423 views; 3:58 … 2:12 chúng tôi – Cao thủ siêu tấn công trong webgame Ninja VTC by VNplaypark 5,031 views … 6:59 hướngdẫn sử dụng cheat engine v6.1 by viet anh Duong 46,094 views….Hướng dẫn cheat web game ninja VTC – YouTube Xem tiếp

5 Lý do để xài Cheat Engine .

Cheat Engine – Phần mềm ột nhập game và ứng dụng miễn phí …

download cheat engine– Cheat Engine là một công cụ mã nguồn mở được … Ngày: 3/24/2013 11:45:28 AM, Dung lượng: 6,9 MB … và hơn thế nữa Download game Diablo 2 hoàn toàn miễn phí khi sử dụng. … Fraps là một ứng dụng của Windows được sử dụng trong các trò chơi bằng cách sử dụng công nghệ DirectX hoặc…

Vua Hải Tặc Offline bản mới nhất giống Game5 – Game Private

+ Số liệu bug chiến tich, beri và danh vọng này có công thức x*2+1 (ví dụ bạn có 500 beri thì = 500*2+1 =1001) Bạn mún cheat ở đây là 500 beri = 1001. Nhập số 1001 … Hướng dẫn lấy vàng trong vua hải tặc offline 4 · Hướng dẫn lấy vàng trong vua hải tặc offline 7. 6. Lên cấp tất cả các tướng. B1: Đi hội đàm và khi nào có đc điểm Chiến Tích thì dùng Cheat Engine B2: Đến con cừu và làm như bước nhận vàng, các bạn sẽ đổi 10k Chiến Tích thành EXP cái này áp …

Cùng vọc CheatEngine ∩(_)∩ – WordPress.com

Hướng dẫn chi tiết về Cheat Engine ( C.E ) để ột nhập các game. giới thiệu chung: 1: sử dụng để tìm game mà bạn cần ột nhập. 2: số file tìm được sau mỗi lần lọc dữ liệu. hầu như nhiệm vụ của bạn là giảm con số này xuống mức …

Dota mang phong cách Tam Quốc đã về Việt Nam – VnExpress …

Game thủ đã từng thử sức với game MOBA 3Q (Củ Hành hay Mộng Tam Quốc) của VNG sẽ cảm thấy có một sự quen thuộc “nhẹ” bởi cả 2 đều xây dựng trên thời kỳ đẫm máu nhất trong lịch sử Trung Quốc. … “Biết thân, biết phận” không theo hưởng ké sự thành công của League of Legends và Dota, Anh Hùng Tam Quốc phát triển các trận Trường Bản, Xích Bích, Đồng Quan thành những chiến dịch hoành tráng trong chiến …. Lộ cấu hình ‘khủng’ của iPhone 6.

Đêm Hoa Đăng Bi Thảm. Hồi ký của Mũ Đỏ Nguyễn Văn Lập …

Nhiệm vụ bây giờ chỉ là yễm trợ tổng quát tăng cường cho các đơn vị bạn, nên chúng tôi có thì giờ đi vào làng dân thăm hiểu tình hình luôn tiện làm công tác dân sự vụ. … và một liên đội 175 ly gồm 3 khẩu để tác xạ tăng cường cho Lữ Đoàn 3 Nhảy dù gồm các Tiểu đoàn 2,5, và 6 Nhảy Dù đóng từ Khánh Dương tức cửa ngỏ vào tỉnh Ban Mê Thuột chạy dài đến phía Bắc của Trung tâm Huấn luyện Lam Sơn. Còn Tiểu đoàn tôi yễm trợ trực tiếp cho các đơn vị tác chiến …

Thachpham.com đang dùng các plugin và dịch vụ nào?

Công dụng: Real-time backup, tức là vừa có một thay đổi nhỏ trong website nó sẽ backup ngay luôn và lưu trữ file backup lên tới 90 ngày. Theo ước tính, blog mình đang backup với tần suất vài chục giây một lần hoặc chậm …

Hướng dẫn chi tiết và bàn luận về Cheat Engine và Artmoney

ai vượt qua các bài tutorial trong CE rồi thì viết lại hướng dẫn đi, tui cũng chỉ đến tutorial 5 ~ 6 thì kẹt ~~ À ông fido ơi, median có mấy skill dù là max lv hay đủ poin cũng đâu có được thì làm sao mà ột nhập 😕 … Space Ranger 2 mình chơi rùi mà ột nhập bình thường dùng ART ột nhập tốt:D . Cách ột nhập item thì cũng dễ thui nhưng hơi lâu và mất công tẹo vì phải dùng Unknown Value và fiter đến khi nào còn khoảng vài chục add thui rồi thử, ột nhập item thích lắm có hôm tớ bỏ cả …