Viet Hoa Java Tren Pc Toan Tap, Huong Dan Viet Hoa Java

Các phần mềm hay game java thường đặt ngôn ngữ trong phần mềm trong các file *.class các file sẽ việt hóa rất dễ bằng cách sử dụng phần mềm Chinese hoắc Mobiletrans. Tuy nhiên có 1 số khác đặt ngôn ngữ trong các file như *.lang hay *.dat hoặc đặc biệt hơn là các file không có định dạng hoặc định dạng rất lạ, do đó chúng ta phải sử dụng các phần mềm khác công phu hơn là Notepad++ hay cao cấp hơn là AXE(Advanced Hex Editor). 1.

Đầu tiên là việt hóa các file class.

Ví trong trong phần này mình lấy ví dụ là game Tiến hành việt hóa: Tạo 1 thư mục (tên tùy ý). Ở đây mình đặt tên thư mục này là Viethoa và đặt ngoài Desktop. Mọi người tìm đến game Sau đó chọn thư mục Viethoa vừa tạo ra lúc nãy và chọn Ok để giải nén. Mở phần mềm Chinese ra, ấn nút có biểu tượng hình thư mục, tìm đến thư mục Viethoa. Sau khi xong mọi người thấy hàng loạt các file như a.class b.class c.class … Mọi người chọn từng file class một và việt hóa. phần mềm, nhưng mọi người yên tâm. Chỉ cần copy tất cả rồi paste lên trang google dịch là lại hiện đúng font và google vẫn dịch bình thường. Sau khi đã dùng google dịch(ai dịch được tiêng trung thì dịch, hehe.) mọi người paste vào ô bên dưới phần chưa được việt hóa. Cũng xuất hiện các các ô đen bị lỗi font đấy nhưng khi chơi game thì không sao đâu. Sau khi đã việt hóa xong hết rồi thì mọi người chọn biểu tượng hình cái đĩa mềm bên cạnh nút có hình thư mục lúc nãy. Sau khi đã việt hóa xong hết các file các class thì mọi người vào thư mục Viethoa chọn tất cả rồi ấn chuột phải chọn Add to archive… Ở phần Archive name mọi người viết tên game vào ví dụ BoomSpeed vh boi skul9x. Ở phần Archive format chọn ZIP. Sau đó chọn Ok. Xong xuôi ta vào thư mục Viethoa đổi tên game từ BoomSpeed vh boi chúng tôi thành BoomSpeed vh boi chúng tôi là ok. Nếu mà máy tính không hiện đuôi .zip thì mọi người làm như sau: Vào My Computer chọn Tools chọn Folder Options… Ở cửa sổ mới chọn mục

View

, ở phần Advanced settings bỏ tích phần

Hide extensions for known files types

. Rùi chọn Ok là xong. Như vậy là việc việt hóa game chứa các file class đã xong. Phần sau mình sẽ hướng dẫn việt hóa các file có đuôi .lang .dat …

Hôm nay mình tiếp tục hướng dẫn mọi người việt hóa các file còn lại. Với các nội dung trong pic hướng dẫn+ với sự nghiên cứu mình tin rằng các bạn có thể hoàn toàn việt hóa được các game java mà mình muốn ( trừ game loft nha hiện nay các hãng game lớn và cả game tầu đã tăng độ mã hóa để bảo mật game của họ không bị chỉnh sửa ,mình thấy rằng các game cũ tầm 2,3 năm trở vè trước rất dễ việt hóa còn các game mới ra rất khó để việt hóa). Sau đây mình xin hướng dẫn việt hóa game Đế chê (Age of empire III)-1 game khá kinh điển. Down game Dụng cụ để việt hóa ở phần này gồm: -Notepad ++ 5.8.5 -Advanced Hex Editor (A.X.E.) Mọi người down game về và đưa vào 1 thư mục (giả su là Viethoa)sẽ được hinh sau: Rất dễ dàng nhận thấy file ngôn ngữ là file chúng tôi đúng không ? đối với game eng file ngôn ngữ thường nằm duy nhất ở một file , cách xác định file đó phụ thuộc vào kinh nghiệm và khả năng phán đoán của bạn không cần mở các file class làm gì chú ý các file không định dạng .lang . dat hay kiểu chúng tôi gì đó còn đối với game tầu thì hơi mệt đấy mở từng file một tại ngôn ngữ nằm giả rác tại bất kì một file nào, bây dùng notepad++ để mở xem trong đó có gì cái này hỗ trở mở mọi loại file kể cả không định dạng. Sau khi sử dụng notepad++ mở file chúng tôi rồi sẽ thấy ngôn ngữ eng ở đây đúng không đối với game eng thì có 2 loại 1 loại có dấu 1 loại thì không dấu đối với những game có font chữ riêng thì không việt hóa có dấu được như game loft chả hạn còn đối với những game font chung thì cứ thế mà việt hóa có dấu thôi. Đối với game này mình đã test và thuộc loại việt hóa không dấu. Chuyển hệ uncode UTF-8 để gõ tiếng việt có dấu chỗ nào có tiếng anh thì chuyển tiếng việt thôi Tiếp tục chỉnh sủa các từ ngữ trong game lưu ý là các kí tự bôi đen là mã hex đấy không sửa được đâu. Chú ý sau khi sửa xong ngôn ngữ thì lưu lại thành địn dạng uncode ANSI như thế này, khi đó các chữ tiếng việt se biến thành các chữ loàng ngoàng đúng không? đừng lo khi đóng vào jar thì chơi game nó sẽ là tiếng việt đấy , cái này cũng có thể việt hóa game tầu đấy bạn đã việt hóa hết các file class của game tầu rồi còn một vài file dat, bin không định dạng nữa và bạn đoán chắc chắn ngôn ngữ nằm trong đó nhưng khi dùng bất cứ một tool nào cũng chỉ thấy mấy cái chữ loàng ngoàng không phải tiếng tầu rất đơn giản dung notepad++ mở cái đó ra chuyển định dạng Unicode no boom là thấy tiếng tầu nhưng để chỉnh sửa nó thì hơi mất thời gian đấy. Lại nói đến game đế chế mà chúng ta đang việt hóa bay giờ đã sửa xong tiếng việt rồi đấy đã chuyển qua định dạng ANSI rồi bạn thử gói lại vào game nếu chơi được thì tốt còn nếu không chơi được thì cái này chắc chắn là được mã hóa hex rồi , thực ra khi mở file bằng notepap++ ta có thể dễ dàng nhìn ra cái đó có được mã hóa hex hay không nếu nó chỉ có ngôn ngữ không thì cứ thế mà làm thôi còn như cái game đế chế này thì cứ mỗi một câu thoại lại có một cái khoảng đen có chữ nul và 1 kí tự nữa đó chính là mã hex đấy, cái này nên đọc bài hướng dẫn việt hóa nâng cao mã hex có thể hiểu rõ hơn về tính chất và cách sửa mã hex, vậy ta phải làm như thế nào để chỉnh sửa đến mã hex dùng notepad không làm được đâu , bây giờ ta phải mở tiếp một công cụ để sửa mã hex mình hay dung axe3 một số người lại hay dùng win hex, giữ nguyên cái của sổ đang sử dụng notepad++ để mở ấy, bây giờ bắt đầu công đoạn chỉnh sửa mã hex cái này đòi hỏi tỉ mỉ độ chính xác cao tại vì chỉ cần làm sai một kí tự thôi là hỏng cả game đấy bây giờ phải kết hợp cái notepad++ để đếm số kí tự của từng câu thoại một bôi đem cái lời thoại cần đếm số kí tự lại ở góc phải của notepad nó sẽ tự động đếm. cái này đếm chuẩn lắm chả hạn với chữ “De che tren mobile” nó sẽ đếm ra 18 kí tự bạn đếm lại coi xem có đúng không, sau khi bạn đã có số kí tự của câu cần sửa mã hex rồi sang của sổ axe 3 sửa mã hex thôi , mở tính làm gì nó tương đương với 01-09 thì không cần tính với các số lớn hơn thì nó lại có kí hiệu hex khác chả hạn như tương ứng với 18 kí tự dịch sang mã hex là 12 ở cái máy tính tại ô char đánh số kí tự đếm được ở notepad là bao nhiêu nó sẽ tự động suy ra mã hex ở ô hex. có được kí hiệu của mã hex rồi thì ta bắt đầu sửa mã hex tại của sổ của axe 3 thôi , đến trước cái từ ngữ mà bạn địn sửa mã hex ấy nhấn vào cái ô kí tự ngay trước nó ấy bên kia ô bye sẽ nhấp nháy nhập kí tự mã hex vào đó ví dụ chữ “De che tren mobile” có 18 kí tự thì mã hex là 12 và bên mà làm chú ý phải cực kì tỉ mỉ và chính xác chỉ cần đếm nhầm và sửa sai mã hex 1 câu thôi cũng hỏng game đấy. Cuối cùng là ta đóng gói vào và thưởng thức thôi.

Huong Dan Co Ban Ve Ms Project 2010 Professional

Published on

3. Hướng dẫn cơ bản về Microsoft Project Professional 2010 -3- * Bạn không thể bắt đầu sử dụng một thiết bị cho đến khi bạn cài đặt nó. * Bạn phải chờ cho bê tông trên nền nhà bạn khô trước khi bạn bắt đầu xây dựng trên đó. * Bạn không thể bắt đầu cho ra một sản phẩm thuốc mới cho đến khi được Bộ Y Tế phê chuẩn. Sắp xếp nguồn lực Khi lần đầu tiên sử dụng Microsot Project, có một số nhầm lẫn về nguồn lực. Nguồn lực không chỉ là con người mà nguồn lực có thể là một phần thiết bị hoặc chi phí, chẳng hạn tiền thuê nhà, một phòng họp mà bạn phải trả phí hàng giờ để sử dụng. Microsoft Project cho bạn 3 loại nguồn lực sau: nguồn lực làm việc, nguồn lực vật chất và nguồn lực về chi phí. Nguồn lực làm việc được tính bằng giờ hoặc ngày làm việc trên một công việc, nguồn lực này điển hình là con người. Nguồn lực vật chất chẳng hạn như vật tư, sắt thép, được tính với chi phí mỗi lần sử dụng hoặc một đơn vị đo lường. Nguồn chi phí là chi phú cụ thể cho mỗi lần mà bạn sử dụng nó và nó có thể thay đổi theo công việc. Ví dụ một buổi hội thảo của các chuyên giá có thể tốn khoản 250$ cho một lần và lần kế tiếp có thể là 500$. Với hội thảo này chỉ làm thay đổi nguồn chi phí mà không thay đổi về thời gian tổ chức. Một số nguồn lực như con người sẽ thực hiện công việc của họ theo lịch. Nếu một người làm việc 8 giờ một ngày và bạn thiết lập cho người đó một công việc mất 24h để hoàn thành, do đó sẽ mất 3 ngày làm việc để hoàn thành công việc. Trong khi đó, một người khác làm việc 12 giờ thì sẽ mất 2 ngày để hoàn thành công việc tương tự. Ngoài ra bạn có thể thiết lập công việc tùy ý chẳng hạn làm việc theo ca hoặc 1 tuần chỉ làm 4 ngày.

4. Hướng dẫn cơ bản về Microsoft Project Professional 2010 -4- Sau khi nhập thông tin, Microsoft Project cung cấp cho bạn một giao diện xem ấn tượng cũng như các tùy chọn báo cáo về dự án của bạn. Bạn có thể xuất ra bản báo cáo và sử dụng nó trên Microsoft Excel 2010. Lên kế hoạch theo dõi Sau khi bạn đã xây dựng được tất cả công việc, xác định thời gian thực hiện, tính phụ

5. Hướng dẫn cơ bản về Microsoft Project Professional 2010 -5- thuộc và mối quan hệ của từng công việc, chi phí và nguồn lực. Bạn cần thiết lập một đường cơ sở. Đường cơ sở được sử dụng để đánh giá và so sánh kế hoạch trên dự án và tiến độ của dự án. Bên cạnh đó, bạn cần ghi chép lại quá trình của từng công việc như thời gian, chi phí thực tế so với trên kế hoạch. Cuối cùng khi có được những đường cơ sở bạn có thể so sánh nó tại Microsoft Project để xem về thực tế thời gian của công việc và chi phí dự án. Cho dù dự án của bạn có tốn kém hơn so với những gì đã dưa ra bạn cũng có thể xem và điều chỉnh lại. Vai trò người quản lý dự án Người quản lý dự án là người tạo ra tổng thể dự án và cố gắng để dự án được hoàn thành. Người quản lý dự án là người có thể sử dụng các kĩ năng và phương pháp để thiết lập mức thời gian hợp lí, quản lý nguồn lực tốt và thường giữ lịch trình dự án đúng tiến độ. Với một hệ thống quản lý dự án tốt, bạn có thể trả lời được các câu hỏi như: * Những công việc phải thực hiện là gì? Thứ tự các công việc như thế nào? * Thời hạn cho các công việc phải được thực hiện như thế nào? * Ai sẽ là người hoàn thành các công việc? * Chi phí cho từng công việc và cho toàn bộ dự án là bao nhiêu? * Nếu một số công việc chưa được hoàn thành so với tiến độ sẽ như thế nào? * Đâu là cách tốt nhất để liên lạc đến những người có trách nhiệm trong một dự án? Một người quản lý dự án không phải lúc nào cũng ở cấp cao nhất của dự án mà thay vào đó, người quản lý dự là người đảm bảo rằng các bộ phận của dự án hợp tác làm việc suôn sẻ. Ngoài ra, người quản lý dự án là người phải chịu trách nhiệm đối với sự thành công hoặc thất bại của dự án. Một người quản lý dự án cần quản lý các vấn đề sau: * Lên kế hoạch cho dự án cũng như tiến độ dự án: đây là những gì bạn có thể tạo ra trong Microsoft Project. Nó bao gồm các bước tính toán, thời gian và chi phí để đạt được mục tiêu của dự án. * Nguồn lực: quản lý nguồn lực của dự án. * Liên hệ với các nhóm, đội ngũ và khach hàng: việc liên lạc, theo dõi, nhắc nhở các

7. Hướng dẫn cơ bản về Microsoft Project Professional 2010 -7- Bạn có thể nhận thấy giao diện trong Microsoft Project 2010 hoàn toàn khác so với các phiên bản Microsoft Project trước đó. Với giao diện Fluent (thường được gọi là giao diện Ribbon) giúp bạn dễ dàng thao tác trên Microsoft Project 2010. Phần chính giao diện của Microsoft Project 2010 gồm có: Thanh công cụ Quick Access là nơi bạn có thể tùy biến giao diện, có thể thêm các tùy chọn bạn thường xuyên sử dụng lên thanh công cụ này.

8. Hướng dẫn cơ bản về Microsoft Project Professional 2010 -8- Thanh tab và giao diện Ribbon thân thiện. Tab là nơi để bạn thao tác trên Microsoft Project 2010. Trong Microsoft Project 2010 có 5 tab chính là Task, Resource, Project, View, Team, ngoài ra có 2 tab có thể thay đổi là Add-in (sử dụng thêm các công cụ hỗ trợ bên ngoài) và Format (tùy theo đối tượng bạn chọn) Group: trên mỗi tab có nhiều group, group là các chức năng được sắp vào một nhóm.

9. Hướng dẫn cơ bản về Microsoft Project Professional 2010 -9- Thanh View label nằm dọc theo cạnh trái của giao diện chính thể hiện kiểu giao diện mà bạn đang xem. Khu vực View shortcut cho phép bạn nhanh chóng chuyển đổi một số chế độ xem bạn hay sử dụng thường xuyên trong Microsoft Project. Bên cạnh View shortcut là thanh trượt Zoom cho phép bạn phòng to thu nhỏ.

12. Hướng dẫn cơ bản về Microsoft Project Professional 2010 -12- * Recent hiển thị các tập tin Project bạn sử dụng gần đây nhất.

13. Hướng dẫn cơ bản về Microsoft Project Professional 2010 -13- * New cho phép bạn tạo một dự án mới dựa trên các mẫu có sẵn.

14. Hướng dẫn cơ bản về Microsoft Project Professional 2010 -14- * Print là tùy chọn cho phép bạn có thể in một dự án.

15. Hướng dẫn cơ bản về Microsoft Project Professional 2010 -15- * Save & Send là tùy chọn cho phép bạn đính kèm một tập tin Project vào e-mail, tạo một tài liệu định dạng PDF hoặc XPS. Ngoài ra bạn có một số tùy chọn để kết nối đến máy chủ.

16. Hướng dẫn cơ bản về Microsoft Project Professional 2010 -16- * Help là tùy chọn cho phép bạn xem các trợ giúp, hướng dẫn trực tuyến về cài đặt Project hoặc hoặc các thông tin về bản quyền sản phầm Microsoft Project.

17. Hướng dẫn cơ bản về Microsoft Project Professional 2010 -17- * Options cho phép bạn thiết lập cho chương trình Microsoft Project 2010.

18. Hướng dẫn cơ bản về Microsoft Project Professional 2010 -18- * Exit : đóng chương trình Microsoft Project 2010 Chú ý: Nếu bạn sử dụng phiên bản Microsoft Project Standard 2010, bạn sẽ không thấy một số tùy chọn giống trong phiên bản Microsoft Project Professional 2010

20. Hướng dẫn cơ bản về Microsoft Project Professional 2010 -20- * Project chứa các chức năng để áp dụng cho toàn bộ dự án. * View giúp bạn kiểm soát, xem được các thông tin trong dự án bằng nhiều cách trình bày khác nhau. * Format là một tab tùy chọn, các chức năng hiển thị trên tab này tùy thuộc vào các chức năng chính mà bạn sử dụng hoặc các thành phần bạn muốn xem. Ví dụ khi bạn xem một công việc, chẳng hạn biểu đồ Gantt Chart, chức năng trên tab Format hiển thị và giúp bạn làm việc với biểu đồ này.

22. Hướng dẫn cơ bản về Microsoft Project Professional 2010 -22- Nhìn chung, tại tab View tập trung các chức năng chính ở các nhóm Task Views, ResourceViews và Data. Nếu bạn muốn xem toàn cảnh tiến trình dự án bạn có thể đánh dấu chọn Timeline tại nhómSplit View trên tab View.

30. Hướng dẫn cơ bản về Microsoft Project Professional 2010 -30- Trên hộp thoại Save As, tại File Name, nhập tên dự án và chọn thư mục lưu trữ dự án.

31. Hướng dẫn cơ bản về Microsoft Project Professional 2010 -31- Nhập tên công việc Việc đặt tên cho công việc có giá trị thực tiễn tốt trong kế hoạch dự án của bạn. Với tên công việc, bạn có thể biết được ý nghĩa và những người thực hiện công việc đó. Một số lời khuyên khi đặt tên công việc: * Sử dụng cụm động từ ngắn để mô tả công việc phải làm, chẳng hạn “Chỉnh sửa bản thảo”. * Nếu công việc được tổ chức thành từng giai đoạn, tránh lặp lại các chi tiết từ các công việc con. * Nếu các công việc đi kèm nguồn lực, không nên sử dụng tên nguồn lực chung với tên công việc. Bạn không cần phải lo lắng về tên công việc vì bạn có thể chỉnh sửa nó bất cứ lúc nào. Để

33. Hướng dẫn cơ bản về Microsoft Project Professional 2010 -33- Tương tự như trên, bạn có thể đặt tên công việc tiếp theo và nhấn Enter.

34. Hướng dẫn cơ bản về Microsoft Project Professional 2010 -34- HƯỚNG DẪN CƠ BẢN VỀ MICROSOFT PROJECT 2010 PROFESSIONAL – PHẦN 6 Trong phần này, bạn sẽ bắt đầu làm việc với thời lượng công việc. Microsoft Project có thể làm việc với thời lượng tính theo phút cho đến tháng. Tùy thuộc vào quy mô của dự án mà bạn có thể thiết lập thời gian theo giờ, ngày và tuần. Trong phần này, bạn sẽ bắt đầu làm việc với thời lượng công việc. Microsoft Project có thể làm việc với thời lượng tính theo phút cho đến tháng. Tùy thuộc vào quy mô của dự án mà bạn có thể thiết lập thời gian theo giờ, ngày và tuần. Microsoft Project có thể xác định thời gian tổng thể của một dự án bằng các tính toán khác nhau giữa thời gian bắt đầu sớm nhất và thời gian kết thúc cuối cùng trong một công việc trên dự án. Khi làm việc với Microsoft Project, bạn có thể sử dụng các chữ viết tắt sau: Chức năng tự động thiết lập công việc luôn luôn có một thời lượng (mặc định là một ngày). Tuy nhiên với chức năng thủ công bạn có thể nhập các giá trị thời gian bằng chữ viết tắt. Ví dụ 3d là 3 ngày. Bạn cũng có thể nhập đoạn văn bản chẳng hạn “Kiểm tra nhóm Makerting” được thay thế với thời gian mặc định là 1 ngày khi bạn chuyển đổi công việc từ chức năng thiết lập thời gian thủ công (Manual) sang thiế lập thời gian tự động (Automatic).

36. Hướng dẫn cơ bản về Microsoft Project Professional 2010 -36- Bạn có thể nhập giá trị thời lượng như sau: Tại cột Start, bạn bắt đầu thiết lập thời gian bắt đầu cho công việc.

37. Hướng dẫn cơ bản về Microsoft Project Professional 2010 -37- Tại cột Finish, nhập ngày kết thúc. Microsoft Project 2010 tính toán thời lượng là 7 ngày.Lưu ý rằng 7 ngày này gồm các ngày từ thứ 2 đến thứ 6 của tuần thứ nhất và thứ 2, thứ 3 của tuần sau đó. Microsoft Project 2010 cũng giúp bạn phân biệt những ngày không làm việc (nonworking day) được thể hiện qua màu sắc khác biệt. Thiết lập một cột mốc quan trọng Bên cạnh việc nhập các công việc, bạn có thể tạo ra các cột mốc quan trọng, thuật ngữ này trong quản lý dự án gọi là milestone. Milestone là sự kiện quan trọng có thể là thời điểm

42. Hướng dẫn cơ bản về Microsoft Project Professional 2010 -42- Liên kết các công việc Hầu hết các dự án yêu cầu công việc phải được thực hiện theo một trình tự nhất định. Vi dụ, công việc viết một chương của cuốn sách phải hoàn thành trước các công việc chỉnh sửa trong chương. Những công việc này có mốt quan hệ kết thúc – bắt đầu (hay còn gọi là có tính phụ thuộc): * Công việc thứ 2 phải xảy ra sau khi công việc đầu tiên được thực hiện. Đây là một trình tự. * Công việc thứ 2 chỉ có thể xảy ra nếu nhiệm vụ đầu tiên hoàn thành. Đây là tính phụ thuộc. Trong Microsoft Project, công việc đầu tiên được gọ là công việc tiền nhiệm (thuật ngữ predecssor) vì nó là công việc đi đầu tiên và kéo theo sau là các công việc phụ thuộc vào nó. Công việc thứ 2 được gọi là công việc kế nhiệm (thuật ngữ successor) vì hoàn thành hoặc sau nhiệm vụ mà nó phụ thuộc.

46. Hướng dẫn cơ bản về Microsoft Project Professional 2010 -46- 1. Trong giao diện biểu đồ Gantt, trỏ chuột vào giai đoạn 1 và kéo đến giai đoạn 2 để thiết lập kiên kết giữa 2 giai đoạn. Giai đoạn 1 và 5 đã liên kết theo kiểu Finish-to-start.

51. Hướng dẫn cơ bản về Microsoft Project Professional 2010 -51- * 24 Hours: không có thời gian nghỉ. * Night Shift: được tính bắt đầu từ đêm thứ 2 cho đến sáng thứ 7, từ 23h đêm đến 8h sáng và mỗi ngày nghỉ 1h. * Standard: chuẩn truyền thống, bắt đầu từ thứ 2 đến thứ 6, từ 8h sáng đến 17h chiều và mỗi ngày nghỉ 1h. Tại cột Name trên tab Exceptions, nhập tên của một sự kiện ngoại lệ nào đó, tại cột Start vàFinish nhập thời gian bắt đầu và kết thúc.

58. Hướng dẫn cơ bản về Microsoft Project Professional 2010 -58- Tại Subject, nhập tên dự án chẳng hạn Chiến dịch ra mắt cuốn sách mới Tại Author bạn có thể nhập tên người quản lý dự án hoặc người đã thiết lập dự án này trênMicrosoft Project 2010. Tại Company nhập tên của công ty, tổ chức đang thực hiện dự án.

64. Hướng dẫn cơ bản về Microsoft Project Professional 2010 -64- Tại For calendar, chọn một nguồn lực cụ thể. Tại Base calendar để mặc định chuẩn cơ bản Standard.

90. Hướng dẫn cơ bản về Microsoft Project Professional 2010 -90- Tại Subject, nhập tên dự án chẳng hạn Chiến dịch ra mắt cuốn sách mới Tại Author bạn có thể nhập tên người quản lý dự án hoặc người đã thiết lập dự án này trên Microsoft Project 2010. Tại Company nhập tên của công ty, tổ chức đang thực hiện dự án.

94. Hướng dẫn cơ bản về Microsoft Project Professional 2010 -94- Nhập năng suất của nguồn lực Cột Max trên bảng nguồn lực đại diện cho nguồn năng suất để thực hiện các công việc. Mặc định là 100% năng suất nghĩa là làm việc 100% thời gian. Đối với nguồn lực mà bạn thiết lập theo kiểu kĩ năng, bạn có thể thiết lập giá trị cao hơn, chẳng hạn 800%. Điều này có nghĩa bạn mong muốn 8 người có kĩ năng đó sẽ làm việc tối đa 100%. Chọn đối tượng cần thiết lập năng suất. Nhập giá trị (đơn vị %) vào các ô thuộc cột Max.

Hướng Dẫn Thi Giải Toán Trên Internet Huong Dan Lam Bai Giai Toan Tren Mang Doc

HƯỚNG D ẪN THI GIẢI TOÁN TRÊN INTERNET

(Ngô Bảo)

(Châu)

(Gõ không dấu)

Địa chỉ Email

Điện thoại

Ảnh đại diện

Đối tượng

(Ngày/Tháng/Năm)

Quy định của ViOlympic

(*) Tôi đồng ý với các quy định của Violympic

Vòng 1 có 3 bài: Bấm vào nút: “Làm bài 1” sẽ hiện ra:

Trong bài thi số 1 có 10 câu, phải điền kết quả vào dấu … của từng câu

Sau khi làm xong sẽ có kết quả của bài số 1, nếu được 70/100 thì sẽ được thi tiếp bài thứ 2.

Bấm vào nút: Làm bài thi thứ 2:

Trong lúc đang tải dữ liệu như hình dưới mà không may bấm F5 thì toi, bài thi thứ 2 không upload được

Nếu chờ 1 thời gian thì bài số 2 sẽ hiện ra:

Đây là dạng bài thi khó, yêu cầu nhanh và cẩn thận

Thời gian làm bài 2 cũng là 15 phút

Kết quả cuối cùng:

Cuối cùng là bài thứ 3.

Đây là dạng bài vừa chơi vừa thi: “Đọc kĩ hướng dẫn sử dụng trước khi dùng”

Cho con thỏ đi theo hướng nào thì tùy, đích cuối cùng là của cà rốt ở cuối màn hình.

Qua mỗi dấu hỏi sẽ là một bài tập, trả lời đúng hoặc sai sẽ trả lời câu tiếp theo. Đến đích sẽ tính điểm bài 3.

Với bài tập trắc nghiệm bấm chuột vào ô tròn trước chữ cái .

Với câu hỏi tự luận, sẽ viết đáp số vào ô: “Nhập kết quả trả lời”

Chú ý cách viết công thức toán học ở dưới.

1. Thời gian mở các vòng thi tự luyện từ 1 – 9:

2. Thời gian tổ chức vòng thi các cấp: a) Vòng thi cấp trường: Các trường tự lựa chọn 1 trong các vòng thi từ 10 đến 14 để tổ chức thi cấp trường. Thời gian mở các vòng thi cấp trường kéo dài từ 09/01/2012 đến 20/02/2012

b) Vòng thi cấp quận, huyện (thị xã): Vòng 15

Thời gian tổ chức vòng thi cấp quận huyện, thị xã kéo dài từ 01/03/2012 đến 20/03/2012

Thời gian tổ chức thi cấp tỉnh, thành phố dự kiến từ 01/04/201 2 – 08/04/2012

Thời gian tổ chức thi cấp toàn quốc dự kiến từ 20/04/2012 đến 29/04/2012

Huong Dan Cách Làm Bang Tay Ngôi Nhà Bằng Ống Hút

Thông báo lỗi

Deprecated function: The each() function is deprecated. This message will be suppressed on further calls trong menu_set_active_trail() (dòng 2404 của chúng tôi ).

Notice: Only variables should be passed by reference trong caidm_display_preprocess_page() (dòng 133 của chúng tôi ).

2 Tháng 2 2013 … Ngôi nhà bằng ống hút. Iry Jonykoj·1 …. Hướng dẫn làm chuông gió tỏ tình ^^. wmv by thienduongthucong 27,316 views; 7:13. Watch Later…Ngôi nhà bằng ống hút – YouTube Xem tiếp

Cách làm ngôi nhà bằng tăm tre cực độc

– Tăm tre, tùy vào ngôi nhà bạn định làm mà cần số lượng tăm sao cho đủ

– Keo dán 502

– Bóng dèn LED

– đèn nháy có nhiều màu: xanh lá, xanh dương, đỏ, vàng, trắng, nhiều màu

– Dao trổ dùng cắt gọt keo thừa, đầu tăm thừa khi dán tăm thành khối

– Kéo lưỡi mỏng, sắc dùng cắt giấy, cắt đầu tăm thừa, …

– Thước kẻ, kẹp giấy, …

Cách làm

Ghép tăm thành mảng

Đặt tấm kính trên mặt phẳng (bàn học, bàn gấp ngồi giường,…). Dùng thước và kẹp giấy kẹp mép định vị

Trải tăm trên một mặt phẳn (số lượng tùy diện tích mảng tăm bạn muốn ghép). Dồn đầu tăm vào mép định vị trên tấm kính cho bằng nhau.Xếp các cây tăm thật sát nhau. Đổ keo 502 vào, từng giọt một theo đường ngang. Chờ keo khô thì chuyển, đổ keo tiếp vào đầu còn lại. Chờ keo khô thì lấy mảng tăm được ghép ra

Đây là ví dụ

Vẽ lại bản vẽ bạn muốn làm thành nhà tăm bằng tỷ lệ bạn chọn trên giấy bìa cứng. Dựng đúng các mảnh tăm, ghép theo nét vẽ mô hình từ tầng trệt lên các tầng kế tiếp, hình thành các mảng tường, rồi cửa lớn, cửa sổ, các chi tiết nhỏ khác, … Với các chi tiết nhỏ, ghép khó khăn, dễ bị keo dính tay, cần dùng cái nhíp (các bạn nữ hay dùng) hoặc cái panh kẹp giữ chi tiết nhỏ để ghép. Phần cụ thể, tỷ mỷ còn lại các bạn sẽ tự phải làm vì mỗi ngôi nhà các bạn làm sẽ theo một khuôn mẫu mà các bạn đã chọn

Cách làm những bông hoa dễ

Cách làm những bông hoa dễ

Cách làm những bông hoa dễ thương từ ống hút 7

Ngôi nhà bằng ống hút – YouTube

2 Tháng 2 2013 … Ngôi nhà bằng ống hút. Iry Jonykoj·1 …. Hướng dẫn làm chuông gió tỏ tình ^^. wmv by thienduongthucong 27,316 views; 7:13. Watch Later

Cách làm trái tim cực đẹp từ ống hút.flv – YouTube

24 Tháng Mười Một 2011 … Cách là trái tim từ ống hút rất đẹp và độc đáo dành tặng người yêu, dành tặng bạn gái. … ♥Cách xếp Trái tim và Kim Tự Tháp bằng giấy xếp sao♥3 types Origami by … Hướng dẫn làm hoa giấy đơn giản (Phần 1) – chúng tôi by Lê Vỹ … Hoa Tay – Nhà que kem HTV4 by Hoa Tay 54,987 views; 3:49

nhà ống hút – YouTube

26 Tháng Tám 2013 … Mới làm mấy bạn cho ý kiến … Nhà làm bằng ống hút (Phần 2) by Tran Huu Nhan 51,683 views · 8:18. Watch Later Nhà Tăm Tre (Biệt Thự Xinh …

Cách làm máy bơm nước mini Web khéo tay

mà chẳng cần ai hướng dẫn cả, cứ nhìn vào cái máy bơm thiệt mà làm theo thôi. Giờ thấy có … Cắt cánh quạt: bằng vỏ l** cắt 1 vòng … Bước 5: lấy phần của bươc 4 ra, khoét 1 lỗ làm ống đẩy nước lên, đưa ống vào dán keo lại. Toilam. com … ( làm ống hút, đầu rồng) …. Ôi, mình thích ngôi nhà bánh kẹo này quá đi thôi :*.

Đồ handmade bằng giấy, Cách làm đồ handmade từ giấy

lamdohandmade.com chia sẻ cách làm đồ handmade bằng giấy, hướng dẫn bạn làm … Chỉ cần cắt – gấp – dán đơn thuần, không cần bạn khéo tay chỉ cần bạn tỉ mỉ … Hôm nay, ngồi trong quán cafe bỗng dưng mình thèm cái cảm giác được …. bằng len (13), Đồ handmade bằng ống hút (2), Đồ handmade bằng que kem (6) …

Làm Thiệp Tin tức giải trí Tin trong ngày

Hướng dẫn tự làm thiệp ngày 8/3 … Làm thiệp năm mới hình ngôi nhà xinh xắn … Còn gì ý nghĩa bằng món quà do chính tay bạn làm phải không nè! … làm con dấu mang phong cách cá nhân · Thông điệp dễ thương làm từ ống hút · Làm thiệp …

Làm đồ trang trí nhà bắt mắt từ ống hút – Phunuhoanhao.net

… từ ống hút. Khéo tay Cập nhập 30/11/-0001 – 12:00 AM … Chỉ bằng cách nối các đoạn ống hút với nhau bằng sợi chỉ đơn giản, không cần keo dán bạn cũng có thể tạo nên himmeli trang trí cho ngôi nhà bạn theo phong cách Thụy Điển. Hãy thỏa sức … ống hút. ® Bản quyền thuộc về tác giả và nguồn tin được trích dẫn.

TỰ LÀM ĐÈN, cập nhật Tin tức, bài báo MỚI NHẤT-Tu Lam Den

Hướng dẫn cách tái sử dụng ống hút độc đáo – Hướng dẫn cách làm

Bỏ cuống dâu tây. Dùng một chiếc ống hút tách bỏ cuống quả dâu tây như thế này, quả dâu sẽ không bị nát. 4. Que cắm kẹo. Chiếc ống hút cứng cáp, màu sắc vui nhộn có thể sử dụng làm que cắm kẹo mút, bánh ngọt xinh xắn. … cách làm ngôi nhà bằng ống hút; cách làm đồ handmade từ ống hút; Huong dan cach lam nha bang ong hut; lam nha bang ong hut; cách làm ngôi sao bằng ống hút; làm đồ handmade bằng ống hút; làm đồ handmade từ ống hút; lam ngoi …

Hướng dẫn sử dụng máy hút bụi gia đình – Dịch vụ giúp việc theo giờ

Bài viết hướng dẫn cách sử dụng, cách bảo quản máy hút bụi tại gia đình cho những người giúp việc hay sử dụng tại công ty, văn phòng cho nhân viên tạp vụ văn phòng. Nếu bạn vẫn còn … Làm sạch tức thì bất cứ khi nào và bất kỳ nơi nào bạn cần, đặc biệt ở những nơi khó lau chùi nhất như nhà bếp, bàn ăn với những mảnh vụn thức ăn rơi rãi khắp sàn hay bàn ăn. May hut bui cam … Không được lấy ống hút và tay cầm máy nhúng vào nước hay bất kỳ chất lỏng nào. Không được …

Chuyện về người phụ nữ đầu tiên bị bắn oan trong Cải cách ruộng đất

Thực ra nhiều năm trước, có lần tôi đã tìm đến ngôi nhà 117 Hàng Bạc. Nhưng người chủ ngôi nhà cho biết người tôi cần tìm không có ở đây. Và không … Sau thời điểm kháng chiến toàn quốc, bà trao chiếc búa cho đội tự vệ phá hoại để làm cái việc san bằng địa khu biệt thự Đồng Bẩm thực hiện chủ trương tiêu thổ kháng chiến. ….. Mùa đông năm 1990, bà Diệp các con và gia đình ông Hanh lại lên Đồng Bẩm theo hướng dẫn bằng điện thoại của nhà ngoại cảm.

Team Building Games Indoor Tùng Team Building – Nguyễn Bá Tùng

Trong nhóm hai người, một người sẽ bị bịt mắt, vì vậy, người kia sẽ phải dắt tay bạn đi đến đích người trưởng trò yêu cầu. Khi nhóm về … Có thể thay thế con thuyền bằng những công việc khác để cả nhóm làm chung, VD ngôi nhà, bộ quần áo… ) Trao và …. Những người mở mắt có nhiệm vụ hướng dẫn để những người nhắm mắt có thể vượt qua được những chướng ngại vật tập huấn viên đưa ra). … Phát vật liệu cho các nhóm như nhau: 20 cái ống hút, kéo, 1 tờ báo, băng dinh.

Sontrung’s Blog (Sơn Trung): VĂN HÓA VIỆT NAM

Một người dân Đà Nẵng khác tên Vi, cho biết: “Cầu Đà Nẵng nếu hỏi một người sống theo xu hướng bây giờ thì họ rất hoan nghênh, thì tiện lợi cho người dân, những chiếc cầu làm cho dòng sông lung linh, sang trọng thêm, … Đến vụ xóa sổ trường Sao Mai, một trong những biểu tượng văn hóa của Đà Nẵng, đây là ngôi trường xây dựng mô phỏng kiến trúc Gothitche với mái nhà cao, tường dày, cửa sổ thông thoáng và những mái vòm cong uy nghi, nằm đối diện …

Hình ảnh kinh hoàng phía sau buồng phá thai chui – VietNamNet

phá thai, hút thai, Kenya. Một phòng phá thai chuẩn tại Nairobi, Kenya. Các bác sỹ ở đây được đào tạo bài bản và chủ yếu dùng kỹ thuật hút thai để loại bỏ những đứa trẻ không mong muốn. Đây là cách làm an toàn nhất và chỉ mất 15 phút. Kỹ thuật hút … phá thai, hút thai, Kenya. Một phụ nữ Kenya 46 tuổi cùng con gái trong ngôi nhà của mình. Mặc dù không chồng nhưng cô đã có tới 4 đứa con. Hàng ngày, cô chấp nhận quan hệ tình dục với đàn ông để kiếm tiền.

Đánh thức Pác Rằng – Van hoa – Lich su – Du lich Cao Bang

Tôi khá thú vị khi thấy một ngôi nhà sàn ở giữa một bản vùng sâu, vùng xa của tỉnh nghèo Cao Bằng lại có khu công trình phụ khang trang, sạch sẽ, với nhà vệ sinh tự hoại, bình nước nóng, gương, lược, khăn tắm, dầu gội đầu, sữa tắm. …. bày hiện vật về đời sống dân bản, có hệ thống máy vi tính nối mạng internet, xây sân đỗ xe, sân thể thao cho cả bản, làm đường bê tông, đường lát gạch và dẫn nước sạch vào tận hộ gia đình, lắp ống hút khói vào từng lò rèn.

Huong Dan Su Dung Arduino

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