Vi Điều Khiển

Chào mừng các bạn đến với thế giới của Vi điều khiển!

--welcome to the world of microcontrollers^^ --

Điện Tử Cơ Bản

nơi khởi đầu

Lập Trình

linh hồn của phần cứng

Thứ Hai, 30 tháng 6, 2014

Download Ashampoo Snap 7.0.7 Full Crack,Phần mềm Quay phim , chụp ảnh màn hình

Ashampoo Snap 7 là cách thông minh để chụp ảnh chụp màn hình,thêm ghi chú và chú thích và chia sẻ với bạn bè của bạn.Với Ashampoo Snap 7 bạn chụp hình ảnh và video ngay từ màn hình của bạn trong vài giây,Với những tính năng mạnh mẽ, giao diện thân thiện với người sử dụng. Trong nhu cầu lưu lại những khoảnh khắc trên màn hình thì Ashampoo Snap thể thiện sự vượt trội hơn hẳn bởi nó hỗ trợ tối đa cho mục đích bày, kèm theo đó là những công cụ nhỏ để chỉnh sửa, thay đổi góc chụp … để hoàn thiện bức ảnh theo ý của bạn. 

[​IMG]
Ashampoo Snap 7.0.7
Cập nhật trong Ashampoo Snap 7:
Workflow nhanh nhạy hơn:
Ashampoo Snap 7 sử dụng quy trình vẽ đã được tối ưu hóa để mang đến cho người dùng cảm giác và giao diện làm việc nhạy bén hơn.
Đơn giản hóa:
Trong phiên bản mới này, bạn sẽ được rút ngắn thao tác để có được kết quả như mong muốn. Ví dụ, thay vì bấm chuột hàng chục lần để chụp ảnh, bạn chỉ cần vài cú nhấp để hoàn thành trong Ashampoo Snap 7, giúp tiết kiệm thời gian và tăng hiệu suất làm việc.
Môi trường làm việc thông minh:
Ashampoo Snap 7 cho phép chỉnh sửa ảnh theo các lớp, vì thế ảnh gốc không bị mất đi và bạn vẫn có thể chỉnh sửa lại tất cả những thay đổi đã tạo.
Tính năng:
Chế độ chụp:

- “Fixed Size Capture” cung cấp nhiều kích cỡ màn hình khác nhau đã được định sẵn.
- Cho phép chụp màn hình một lần hoặc lặp lại.
- Menu capture mode dành cho việc chụp menu nhiều cấp.
- Tự động thêm hình mờ vào ảnh chụp màn hình và video.
- Ghi lại webcam và micro và lưu chúng như một file video.
- Hỗ trợ thay đổi kích thước video đã chụp trong thời gian thực.Chế độ chỉnh sửa:
- Thanh công cụ được tái cấu trúc để sử dụng dễ dàng và nâng cao hiệu suất.
- Tùy chọn truy cập dễ dàng hơn với tất cả các công cụ.
- Hỗ trợ nâng cao hiển thị xoay, trong suốt.
- Hiển thị kiểu thu nhỏ cho nhiều hình chụp.
- Tùy chọn mới để giữ nguyên công cụ hiện tại.
- Upload trực tiếp từ chương trình lên Facebook và YouTube.
Chế độ chỉnh sửa: Công cụ mới
- Note: dễ dàng thêm ghi chú để miêu tả hình chụp.
- Text: hỗ trợ phác thảo, hiệu ứng gương cho việc tạo ra văn bản phức tạp hơn.
- Numbering: tự động đánh số các vùng của hình chụp với các con số nhỏ.
- BlurPen: được sử dụng để làm mờ các vùng của ảnh chụp màn hình

Phần mềm Nero Burning ROM 2014 15.0.05300 Full Crack Key

Nero Burning ROM 2014 là phần mềm ghi đã tốt nhất hiện nay.Phiên bản mới nhất Nero Burning ROM 2014 15.0.05300 sẽ giúp bạn ghi đĩa đơn giản với chất lượng quá đỉnh luôn.Nero Burning ROM có giao diện người dùng dễ sử dụng, cung cấp cho người dùng giải pháp ghi đĩa mạnh mẽ kèm tính bảo mật và các tính năng tùy chỉnh nhiều hơn những công cụ tương tự chỉ có thể ghi đĩa.

[​IMG]
Nero Burning ROM 2014
Tính năng chính Nero Burning ROM 2014:
Ghi đĩa siêu bền

Với công nghệ ghi Nero SecurDisc giúp đảm bảo khả năng đọc đĩa hoàn hảo bất kể vết trầy xước, “độ tuổi” và hư hỏng.
Chia thành nhiều đĩa
Bạn có thể chia nhỏ các tập tin quá lớn và ghi chúng vào số lượng đĩa cần thiết cùng một lúc.
Rip âm thanh
Dễ dàng tạo danh sách nhạc hoặc bản mix của bất kỳ giai điệu yêu thích ngay trên máy tính để phát lại ngay lập tức. Hơn nữa, bạn có thể rip CD âm thanh sang máy tính và chuyển đổi âm thanh.
Quét bề mặt đĩa
Không chỉ có thể ghi đĩa, Nero Burning ROM còn cung cấp nhiều tính năng như quét bề mặt đĩa để cung cấp thêm độ tin cậy cho đĩa quang được ghi.
Sao chép đĩa
Sao chép nhạc từ CD và thâm chí phim HD sang đĩa Blu-ray một cách nhanh chóng và dễ dàng.
Lưu ý: Chức năng ghi và phát lại AVCHD cũng như định dạng MPEG-4 và BD-AV không được hỗ trợ trong phiên bản dùng thử.

Thứ Tư, 2 tháng 1, 2013

[Download] CCS 4.104 FULL - Trình biên dịch vi điều khiển PIC



CCS là trình biên dịch lập trình bằng ngôn ngữ C cho Vi điều khiển PIC, là sự tích hợp của 3 trình biên dịch riêng biệt cho 3 dòng PIC khác nhau:

Thứ Ba, 4 tháng 9, 2012

Bit - Byte


Bit

Lý thuyết phát biểu rằng “bit” là đơn vị cơ bản của thông tin ... Hãy tạm thời quên định nghĩa khô khan này, và nhìn vào thực tế. Câu trả lời không có gì đặc biệt, rằng đây là một chữ số nhị phân. Tương tự như hệ thống số thập phân, trong đó cùng 1 chữ số trong 1 số không có cùng giá trị (ví dụ chữ số 4 trong số 444 là như nhau, nhưng có giá trị khác nhau), "ý nghĩa" của bit cũng phụ thuộc vào vị trí của nó trong số nhị phân, bằng cách đánh số các bit: bit 0 (bit ngoài cùng bên phải), bit 1 (bit thứ 2 từ bên phải), bit 2 ... Ngoài ra, vì hệ thống số nhị phân sử dụng 2 chữ số (0 và 1), do đó giá trị của 1 bit cũng có thể là 0 hoặc 1.
Đừng nhầm lẫn nếu bạn thấy 1 bit có giá trị là 4, là 16 hoặc 64. Nó chỉ đơn giản là chúng ta đã quy đổi giá trị của bit đó từ hệ nhị phân ra hệ thập phân. Ví dụ: "giá trị của bit thứ 6 trong số nhị phân tương đương với 64 trong hệ thập phân".

Byte
 
Một byte bao gồm 8 bit nhóm lại với nhau. Nếu một bit là một chữ số, ta có thể coi byte là một số. Tất cả các phép tính toán học có thể được thực hiện trên đó, như trên số thập phân bình thường. Cũng như các hệ thống số khác, các chữ số trong 1 byte không có cùng giá trị. Giá trị lớn nhất là bit ngoài cùng bên trái, được gọi là bit có trọng số cao nhất (MSB-the most significant bit), bit ngoài cùng bên phải có giá trị bé nhất và do đó được gọi là bit có trọng số thấp nhất (LSB-the least significant bit). Giống như hệ thống số nhị phân, 8 chữ số có thể đại diện cho 256 giá trị, do vậy số thập phân lớn nhất mà 1 byte có thể đại diện là 255 (vì có 1 giá trị dành để đại diện cho số 0).

Nibble

Nibble là một nửa byte. Tùy thuộc vào một nửa byte bên trái hoặc bên phải, mà ta gọi là " Nibble cao" hay " Nibble thấp". Hoặc đơn giản ta có thể gọi là “nửa byte cao” hay “nửa byte thấp”. 

Thế giới của những Con số



Các khái niệm cơ bản

Bạn có biết rằng tất cả mọi người trong chúng ta có thể được xếp vào 1 trong 10 nhóm: nhóm 1 là những người đã quen thuộc với hệ thống số nhị phân, và nhóm 10 là những người không quen thuộc với nó. Có thể bạn không hiểu tại sao tôi lại nói là “1 trong 10 nhóm”? J Điều đó có nghĩa rằng bạn vẫn còn thuộc nhóm phía sau. Đừng lo lắng, nếu bạn muốn thuộc vào nhóm đầu tiên, để hiểu được “ngôn ngữ của máy tính”, hãy đọc tiếp các phần tiếp theo, chúng ta sẽ mô tả một cách vắn tắt về các khái niệm cơ bản (chỉ để chắc chắn rằng chúng ta có thể hiểu được nhau), các khái niệm này được sử dụng rất nhiều trong lĩnh vực điện tử máy tính. Còn nếu bạn đã nắm rõ, chúng ta cũng có thể coi đây như một cơ hội củng cố thêm kiến thức.

Thế giới của những con số

Toán học là một ngành khoa học cơ bản! Tạo hóa sinh ra vạn vật rất hợp lý và logic. Toàn thể vũ trụ có thể được con người mô tả chỉ với 10 chữ số. Tuy nhiên, điều này có thực sự đúng? Chúng ta có thực sự cần chính xác đến 10 chữ số? Tất nhiên là không, đây chỉ là một vấn đề của thói quen mà thôi. Hãy nhớ lại các bài học từ thời tiểu học.
Ví dụ, số 764 có nghĩa là:
4 đơn vị, 6 hàng chục và 7 hàng trăm.
Rất đơn giản!  
Và nó có thể được mô tả một cách phức tạp hơn:
4 + 60 + 700.
Thậm chí còn phức tạp hơn nữa:
4 * 1 + 6 * 10 + 7 * 100.
Có thể nhìn nhận các con số này một cách khoa học hơn không? Câu trả lời là có:
4 * 10 ^ 0 + 6 * 10 ^ 1 + 7 * 10 ^ 2.
Điều này có ý nghĩa gì? Tại sao chúng ta có thể hiểu và sử dụng chính xác ngay lập tức với những con số như: 100, 101 và 102? Tại sao các con số này lại liên quan mật thiết với số 10? Đó là bởi vì chúng ta sử dụng 10 chữ số khác nhau (0, 1, 2, ... 8, 9) để biểu diễn mọi thứ. Nói cách khác, bởi vì chúng ta sử dụng cơ số 10, tức là hệ thống số thập phân. Và qua thời gian sử dụng lâu dài, chúng ta đã quen, đến mức không cần thiết phải biểu diễn lại theo các cách “phức tạp” như trên mà ta vẫn dễ dàng hiểu được chúng.

Thứ Hai, 3 tháng 9, 2012

Sự khác biệt giữa một Vi điều khiển và một Vi xử lý



Vi điều khiển và vi xử lý có rất nhiều điểm khác nhau. Sự khác biệt đầu tiên và quan trọng nhất chính là chức năng của nó. Để bộ vi xử lý có thể hoạt động được, các thành phần ngoại vi khác như bộ nhớ phải được thêm vào nó. Mặc dù các bộ vi xử lý được coi là những bộ máy tính toán mạnh mẽ, nhưng điểm yếu của chúng là chúng không được thiết kế để giao tiếp trực tiếp với các thiết bị ngoại vi.
Để giao tiếp với môi trường ngoại vi, bộ vi xử lý phải cần thêm các bo mạch đặc biệt khác bên ngoài. Bộ vi xử lý được ví như trái tim thuần khiết của các máy tính, và nó không thể hoạt động một mình được. Đây là đặc trưng của các bộ vi xử lý, và điều này vẫn giữ nguyên cho đến ngày hôm nay.

Lịch sử ra đời của Vi xử lý/Vi điều khiển

Giới thiệu

Sự phát triển mạnh mẽ của vi điều khiển như ngày hôm nay là nhờ công nghệ mạch tích hợp. Công nghệ này đã cho phép chúng ta lưu trữ hàng trăm nghìn bóng bán dẫn vào một con chip, mở đầu cho việc sản xuất các bộ vi xử lý. Các máy tính đầu tiên được tạo ra bằng cách kết hợp các thiết bị ngoại vi bên ngoài vào bộ vi xử lý chính như bộ nhớ, các bus vào ra, các bộ định thời … Theo thời gian, việc tăng thêm mật độ tích hợp đã tạo ra các loại chip đầu tiên, có chứa cả bộ xử lý, các thiết bị ngoại vi, mà chúng ta quen gọi là vi điều khiển. Vậy mọi thứ đã bắt đầu phát triển từ đâu?

Trở về quá khứ…

Tại Châu Á, vào năm 1969, một nhóm các kỹ sư Nhật Bản từ BUSICOM đã đến Mỹ để đặt hàng một vài vi mạch tích hợp cần thiết cho các máy tính được thiết kế theo dự án của họ. Yêu cầu này được gửi đến INTEL, và Marcian Hoff là người phụ trách của dự án đó. Là người có kinh nghiệm trong lĩnh vực điện tử máy tính, ông đề xuất một ý tưởng mới, thay vì ý tưởng thiết kế được đưa ra trước đó. Giải pháp này là thiết kế các vi mạch hoạt động đúng theo chương trình được lưu trữ trong chính bản thân nó. Điều này có nghĩa là cấu hình vi mạch sẽ đơn giản hơn, nhưng nó sẽ đòi hỏi nhiều không gian bộ nhớ hơn so với giải pháp được đề xuất bởi các kỹ sư Nhật Bản. Sau một thời gian, trong khi các kỹ sư Nhật Bản vẫn cố gắng tìm một giải pháp dễ dàng hơn, thì ý tưởng của Marcian đã được hiện thực và bộ vi xử lý đầu tiên đã ra đời. Một cộng sự lớn của Marcian, góp phần biến ý tưởng trở thành sản phẩm đó là Federico Faggin. Chín tháng sau khi thuê anh ta, Intel đã thành công trong việc phát triển một sản phẩm từ ý tưởng ban đầu đó. Năm 1971, Intel có được quyền bán mạch tích hợp này. Trước đó, Intel đã mua lại bản quyền từ BUSICOM, trở thành kho báu của Intel. Trong năm đó, một bộ vi xử lý được gọi là 4004 xuất hiện trên thị trường. Đó là bộ vi xử lý 4-bit đầu tiên với tốc độ 108KHz, số lượng bóng bán dẫn là 2.300.

Chào mừng bạn đến với Thế giới của Vi điều khiển

Mở Đầu

Nội dung trong loạt bài này sẽ giới thiệu đến các bạn những kiến thức cơ bản nhất, mong góp phần dẫn đường cho các bạn đến với thế giới của vi điều khiển.
Thứ tự các bài đã được sắp xếp từ trên xuống dưới, từ đơn giản đến phức tạp. Do vậy bạn nên đọc theo thứ tự đó.
Hoan nghênh góp ý của các bạn!

Thứ Sáu, 31 tháng 8, 2012

Cách hàn linh kiện dán (SMD)



Chuẩn bị: mỏ hàn tốt, thiếc sợi nhỏ, thiếc lỏng, nhựa thông nước, dây hút thiếc, các dụng cụ lau chùi ...

Thứ Hai, 30 tháng 7, 2012

Mũi điện tử giúp chẩn đoán sớm căn bệnh ung thư


Trung tâm nghiên cứu công nghệ nano thuộc Học viện công trình hóa học, Đại học công nghệ Haifa (Israel) vừa tuyên bố đã nghiên cứu thành công mũi điện tử bionic chẩn đoán sớm bệnh ưng thư.
Ảnh minh hoa. Nguồn: Internet
Thiết bị trên có thể chẩn đoán nhanh, chính xác các bệnh ung thư và vị trí ung thư như ung thư phổi, ung thư tuyến vú, ung thư tuyến tiền liệt và ung thư ruột kết.

Thứ Tư, 25 tháng 7, 2012

Thấu kính áp tròng tích hợp màn hình Led


Thấu kính áp tròng tích hợp màn hình Led, có thể hiển thị nhiều thông tin kiểu đồ họa, đang bước dần từ phim ảnh viễn tưởng ra cuộc sống thật nhờ công trình nghiên cứu của các nhà khoa học.

Nắm bắt xu thế ngày càng nhỏ gọn của các thiết bị hiển thị hình ảnh di động, nhà nghiên cứu Babak Parviz tại ĐH Washington, Seattle, Mỹ, đã đưa ra ý tưởng tích hợp những thiết bị này với một thấu kính áp tròng.

Để thực hiện điều này, Parviz đã tìm cách nhúng những vi mạch điện tử trong chất nền như giấy hoặc nhựa. Những mạch điện và đi-ôt phát quang đã được bọc trong vật liệu tương hợp sinh học và sau đó đặt vào những đường nứt khắc vào ống kính.

Ghép thành công vi mạch điện tử cho người mù


Vi mạch điện tử kích thước 3 x 3mm, được cấy vào nhãn cầu mắt của người mù
Vi mạch điện tử kích thước 3 x 3mm, được cấy vào nhãn cầu mắt của người mù.
TPO - “Lần đầu tiên tôi thấy ánh sáng sau 20 năm sống trong bóng tối”. Người đàn ông mù người Anh đã hồi phục được khả năng thị giác sau khi phẫu thuật thành công vi mạch điện tử vào nhãn cầu mắt.

Thứ Năm, 19 tháng 7, 2012

[Học lập trình 8051] Bài 7: Ngắt trong 8051


Ngắt trong 8051

Mục tiêu

Kết thúc bài học này, bạn có thể:

Ø  Phân biệt cơ chế ngắt với hỏi vòng
Ø  Nắm rõ các loại ngắt trong 8051
·        Ngắt timer/counter
·        Ngắt ngoài
·        Ngắt truyền thông nối tiếp
Ø  Lập trình các ngắt
·        Trình phục vụ ngắt là gì?
·        Cho phép ngắt và cấm ngắt
·        Thiết lập mức ưu tiên của các ngắt

Giới thiệu

            Ngắt (Interrupt) - như tên của nó, là một số sự kiện khẩn cấp bên trong hoặc bên ngoài bộ vi điều khiển xảy ra, buộc vi điều khiển tạm dừng thực hiện chương trình hiện tại, phục vụ ngay lập tức nhiệm vụ mà ngắt yêu cầu – nhiệm vụ này gọi là trình phục vụ ngắt (ISR: Interrupt Service Routine).
Trong bài này ta tìm hiểu khái niệm ngắt và lập trình các ngắt trong bộ vi điều khiển 8051.

1. Các ngắt của 8051

1.1  Phân biệt cơ chế ngắt với hỏi vòng

Lấy ví dụ: Bộ vi điều khiển đóng vai trò như một vị bác sĩ, các thiết bị kiểm soát bởi vi điều khiển được coi như các bệnh nhân cần được bác sĩ phục vụ.
Bình thường, vị bác sĩ sẽ hỏi thăm lần lượt từng bệnh nhân, đến lượt bệnh nhân nào được hỏi thăm nếu có bệnh thì sẽ được bác sĩ phục vụ, xong lại đến lượt bệnh nhân khác, và tiếp tục đến hết. Điều này tương đương với phương pháp thăm dò - hỏi vòng (Polling) trong vi điều khiển.
Cứ như thế, nếu chúng ta có 10 bệnh nhân, thì bệnh nhân thứ 10 dù muốn hay không cũng phải xếp hàng chờ đợi 09 bệnh nhân trước đó. Giả sử trường hợp bệnh nhân thứ 10 cần cấp cứu thì sao? Anh ta sẽ gặp nguy cấp trước khi đến lượt hỏi thăm của bác sĩ mất! L Nhưng, nếu anh ta sử dụng phương pháp “ngắt” thì mọi chuyện sẽ ổn ngay. Lúc đó vị bác sĩ sẽ ngừng mọi công việc hiện tại của mình, và tiến hành phục vụ trường hợp khẩn cấp này ngay lập tức, xong việc bác sĩ lại trở về tiếp tục công việc đang dở. Điều này tương đương với phương pháp ngắt (Interrupts) trong vi điều khiển.
            Trở lại với bộ vi điều khiển của chúng ta: 1 bộ vi điều khiển có thể phục vụ cho nhiều thiết bị, có 2 cách để thực hiện điều này đó là sử dụng các ngắt (Interrupts) và thăm dò (polling):

Ø  Trong phương pháp sử dụng ngắt: mỗi khi có một thiết bị bất kỳ cần được phục vụ thì nó báo cho bộ vi điều khiển bằng cách gửi một tín hiệu ngắt. Khi nhận được tín hiệu ngắt thì bộ vi điều khiển ngừng tất cả những gì nó đang thực hiện để chuyển sang phục vụ thiết bị gọi ngắt. Chương trình ngắt được gọi là trình phục vụ ngắt ISR (Interrupt Service Routine) hay còn gọi là trình quản lý ngắt (Interrupt handler). Sau khi phục vụ ngắt xong, bộ vi xử lý lại quay trở lại điểm bị ngắt trước đó và tiếp tục thực hiện công việc.
Ø  Trong phương pháp thăm dò: bộ vi điều khiển kiểm tra liên tục tình trạng của tất cả các thiết bị, nếu thiết bị nào có yêu cầu thì nó dừng lại phục vụ thiết bị đó. Sau đó nó tiếp tục kiểm tra tình trạng của thiết bị kế tiếp cho đến hết. Phương pháp thăm dò rất đơn giản, nhưng nó lại rất lãng phí thời gian để kiểm tra các thiết bị kể cả khi thiết bị đó không cần phục vụ. Trong trường hợp có quá nhiều thiết bị thì phương án thăm dò tỏ ra không hiệu quả, gây ra chậm trễ cho các thiết bị cần phục vụ.

Điểm mạnh của phương pháp ngắt là:

Ø  Bộ vi điều khiển có thể phục vụ được rất nhiều thiết bị (tất nhiên là không tại cùng một thời điểm). Mỗi thiết bị có thể nhận được sự chú ý của bộ vi điều khiển dựa trên mức ưu tiên được gán cho nó. Đối với phương pháp thăm dò thì không thể gán mức ưu tiên cho các thiết bị vì nó kiểm tra tất cả mọi thiết bị theo kiểu hỏi vòng.
Ø  Quan trọng hơn, trong phương pháp ngắt thì bộ vi điều khiển còn có thể che (làm lơ) một yêu cầu phục vụ của thiết bị. Điều này lại một lần nữa không thể thực hiện được trong phương pháp thăm dò.
Ø  Lý do quan trọng nhất mà phương pháp ngắt được ưu chuộng là vì nó không lãng phí thời gian cho các thiết bị không cần phục vụ. Còn phương pháp thăm dò làm lãng phí thời gian của bộ vi điều khiển bằng cách hỏi dò từng thiết bị kể cả khi chúng không cần phục vụ.

Ví dụ trong các bộ định thời được bàn đến ở các bài trước ta đã dùng một vòng lặp kiểm tra và đợi cho đến khi bộ định thời quay trở về 0. Trong ví dụ đó, nếu sử dụng ngắt thì ta không cần bận tâm đến việc kiểm tra cờ bộ định thời, do vậy không lãng phí thời gian để chờ đợi, trong khi đó ta có thể làm việc khác có ích hơn.

1.2 Sáu ngắt trong 8051

            Thực tế chỉ có 5 ngắt dành cho người dùng trong 8051 nhưng các nhà sản xuất nói rằng có 6 ngắt vì họ tính cả lệnh RESET. Sáu ngắt của 8051 được phân bố như sau:

1.      RESET: Khi chân RESET được kích hoạt từ 8051, bộ đếm chương trình nhảy về địa chỉ 0000H.  Đây là địa chỉ bật lại nguồn.
2.      2 ngắt dành cho các bộ định thời: 1 cho Timer0 và 1 cho Timer1. Địa chỉ tương ứng của các ngắt này là 000BH001BH.
3.      2 ngắt dành cho các ngắt phần cứng bên ngoài: chân 12 (P3.2) và 13 (P3.3) của cổng P3 là các ngắt phần cứng bên ngoài INT0INT1 tương ứng. Địa chỉ tương ứng của các ngắt ngoài này là 0003H0013H.
4.      Truyền thông nối tiếp: có 1 ngắt chung cho cả nhận và truyền dữ liệu nối tiếp. Địa chỉ của ngắt này trong bảng vector ngắt là 0023H.

1.3 Trình phục vụ ngắt

            Đối với mỗi ngắt thì phải có một trình phục vụ ngắt (ISR) hay trình quản lý ngắt để đưa ra nhiệm vụ cho bộ vi điều khiển khi được gọi ngắt. Khi một ngắt được gọi thì bộ vi điều khiển sẽ chạy trình phục vụ ngắt. Đối với mỗi ngắt thì có một vị trí cố định trong bộ nhớ để giữ địa chỉ ISR của nó. Nhóm vị trí bộ nhớ được dành riêng để lưu giữ địa chỉ của các ISR được gọi là bảng vector ngắt. Xem Hình 1.


Thứ Sáu, 13 tháng 7, 2012

Virtual Serial Port Driver - Tạo cổng nối tiếp ảo


Virtual Serial Port Driver là phần mềm hữu hiệu để tạo ra các cổng nối tiếp ảo và kết nối chúng theo cặp thông qua dây cáp null-modem ảo. Các ứng dụng trên cả hai đầu của cặp đó sẽ có thể trao đổi dữ liệu cho nhau. 
Khi đó, dữ liệu được ghi trên cổng đầu tiên sẽ xuất hiện ở cổng thứ hai và ngược lại.
Tất cả các cổng nối tiếp ảo đều hoạt động chính xác như những cổng thực, mô phỏng các thiết lập của chúng. Do đó, bạn có thể tạo ra bao nhiêu cặp cổng ảo theo ý muốn mà không cần phải sử dụng phần cứng bổ sung nào.
Thêm vào đó, công nghệ cổng nối ảo Eltima có thể được tích hợp toàn diện vào trong phần mềm của chính bạn.

[Học lập trình 8051] Bài 6: Truyền thông nối tiếp với 8051

Truyền thông nối tiếp với 8051

Mục tiêu

Kết thúc bài học này, bạn có thể hiểu:

Ø  Truyền dữ liệu nối tiếp đồng bộ, không đồng bộ
Ø  Đóng khung dữ liệu trong truyền thông không đồng bộ
Ø  Chuẩn giao diện RS232
Ø  Nối ghép 8051 với chuẩn RS232
Ø  Các bước lập trình truyền thông nối tiếp cho 8051
·        Cài đặt khung truyền
·        Cài đặt tốc độ baud

Giới thiệu

Các máy tính truyền dữ liệu theo hai cách: Song song và nối tiếp. Trong truyền dữ liệu song song thường cần rất nhiều đường dây dẫn chỉ để truyền dữ liệu đến một thiết bị chỉ cách xa vài bước. Ví dụ của truyền dữ liệu song song là các máy in hoặc các ổ cứng, mỗi thiết bị sử dụng một đường cáp với nhiều dây dẫn. Mặc dù trong các trường hợp như vậy thì nhiều dữ liệu được truyền đi trong một khoảng thời gian ngắn bằng cách dùng nhiều dây dẫn song song, nhưng khoảng cách thì không thể lớn được. Vì các đường cáp dài làm suy giảm thậm chí làm méo tín hiệu. Ngoài ra, các đường cáp dài có giá thành cao. Vì những lý do này, để truyền d liệu đi xa thì  phải sử dụng phương pháp truyền nối tiếp.

1.      Các cơ sở của truyền thông nối tiếp

Trong truyền thông nối tiếp dữ liệu được gửi đi từng bit một, so với truyền song song thì là một hoặc nhiều byte được truyền đi cùng một lúc. Hình 1 so sánh giữa việc truyền dữ liệu nối tiếp và song song.

            Hình 1: Sơ đồ truyền dữ liệu nối tiếp so với sơ đồ truyền song song.

Thứ Tư, 11 tháng 7, 2012

Khái niệm cơ bản trong kỹ thuật Vi xử lý



Khái niệm cơ bản trong kỹ thuật Vi xử lý

I. CẤU TRÚC PHẦN CỨNG CỦA MỘT VI XỬ LÝ


Intel 4004, vi xử lý 4 bit thương mại đầu tiên năm 1971

Bộ vi xử lý Intel 80486DX2

        Những kiến thức được diễn đạt trong tài liệu này là những ý kiến mang tính chủ quan mà người viết muốn san sẻ với các bạn đọc có cùng mối quan tâm và chỉ liên quan đến những vấn đề cơ bản của kỹ thuật vi xử lý nói chung, không phải là kiến thức áp dụng cho một loại vi xử lý cụ thể.

Thứ Ba, 10 tháng 7, 2012

[Tự học Lập trình C] Bài 16: Hàm [Thực Hành]


Bài 16: Hàm [Thực Hành]

Mục tiêu:

Kết thúc bài học này, bạn có thể:

Ø  Định nghĩa và gọi hàm
Ø  Sử dụng các tham số trong hàm

Phần I – Trong thời gian 1 giờ 30 phút đầu:

16.1  Hàm

Như chúng ta đã biết, một hàm là một khối các lệnh thực hiện một tác vụ xác định. Trong bài này, chúng ta tập trung vào cách tạo và sử dụng hàm.

16.1.1  Định nghĩa hàm

Một hàm được định nghĩa với một tên hàm, theo sau bởi cặp dấu ngoặc nhọn {} bên trong chứa một hay nhiều câu lệnh.
Ví dụ:

argentina()
{
            statement 1;
            statement 2;
            statement 3;
}

16.1.2  Gọi một hàm

Một hàm có thể được gọi từ chương trình chính bằng cách đưa ra tên của hàm theo sau bởi cặp dấu ngoặc () và một dấu chấm phẩy ;.
Ví dụ:

argentina();

Bây giờ, xem chương trình hoàn thiện:

1.    Gọi trình soạn thảo chương trình C.
2.    Tạo tập tin mới.
3.    Đưa vào đoạn mã lệnh sau:

#include<stdio.h>
#include<conio.h>
void Vietnam();
void Italy();
void Brazil();
void Argentina();
main() 
{
            printf("\nI am in main");
            Vietnam();
            Italy();
            Brazil();
            Argentina();
            getch();
}
void Vietnam()
{
            printf("\nI am in Vietnam");
}
void Italy()
{
            printf("\nI am in Italy");
}
void Brazil()
{
            printf("\nI am in Brazil");         
}
void Argentina()
{
            printf("\nI am in Argentina");
}

4.    Biên dịch và thực thi chương trình.

Kết quả của chương trình: