USB Experimental Board

USB Experimental Board

Overview

This project aims to provide a easy to use USB experimental board for students of the first year. Instead of only using the standard log for their (yet simple) programs, they are able to integrate hardware into their applications, which makes programming more interesting. The project provides a Java API to access the hardware such as display, flash, ADCs, etc. on the target board over USB from the PC. This approach requires a high level of abstraction to make it possible to use a simple but flexible Java API hiding the hardware and communication details.

For advanced students, firmware based on the existing framework can be developed on the microcontroller and downloaded over USB or JTAG.

Hardware

For communication and controlling the hardware a Atmel AT90USB1287 USB microcontroller is used. The following hardware components are accessible on the board:

  • 3x12 Characters I2C/TWI LCD Display

  • Serial Interface (UART)

  • 32 Mbit Serial Flash Memory (SPI)

  • 4+1-Way Joystick

  • Loudspeaker

  • Microphone

  • Light Dependent Resistor (LDR)

  • Thermal Resistor (NTC)

  • 4 LEDs

  • 6 Buttons

 

Software

The communication with the device is based on the Java libusb wrapper.

Each hardware component is represented by a Java class. Prior to using the class, the connection to the USB device must be established. The following code snippet shows how to write a string to the Display using the Display class.

// create and open the USB device
Device dev = DeviceFactory.getDevice();
dev.open();

// create and initialize the display
Display disp = new Display(dev);
disp.init(true, true, true);
// write a string to the display
disp.write("Hello World");

// close the USB device
dev.close();
More information can be found in the javadoc.

 

Test Application

To test your device you can use the test application AVRExpboard TA

 Reference: http://inf.ntb.ch/infoportal/help/index.jsp?topic=/ch.ntb.infoportal/projects.html
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值