Комбинированное звуковое USB-устройство с функциями автономного MP3-плеера и поддержкой Bluetooth
Литература
1. Агуров П. В. Интерфейсы USB. Практика использования и программирования. – СПб.: БХВ-Петербург, 2004 г.
2. Агуров П. В. Последовательные интерфейсы ПК. Практика программирования. – СПб.: БХВ-Петербург, 2004 г.
3. Ан П. Сопряжение ПК с внешними устройствами. – Пер. с англ. – М.: ДМК Пресс, 2001 г.
4. Гребнев В. В. Микроконтроллеры семейства AVR
фирмы Atmel. – М.: ИП РадиоСофт, 2002 г.
5. Стешенко В. Б. P-CAD. Технология проектирования печатных плат. – СПб.: БХВ-Петербург, 2003 г.
6. Фрунзе А. В. Микроконтроллеры? Это же просто! Т. 1. – М.: ООО “ИД Скимен”, 2002 г.
7. Фрунзе А. В. Микроконтроллеры? Это же просто! Т. 2. – М.: ООО “ИД Скимен”, 2002 г.
8. Фрунзе А. В. Микроконтроллеры? Это же просто! Т. 3. – М.: ООО “ИД Скимен”, 2003 г.
9. Lennart Yseboodt, Michael De Nil. EFSL - Embedded Filesystems Library - 0.3. 2005 г.
10. Олег Вальпа. Устройство флеш-памяти с USB интерфейсом. //СОВРЕМЕННАЯ ЭЛЕКТРОНИКА. – 2006 г, № 5, с. 56-59.
11. Олег Пушкарёв. Применение MMC-карт в микроконтроллерных системах. //СОВРЕМЕННАЯ ЭЛЕКТРОНИКА. – 2006 г, № 1, с. 46-49.
12. Дмитрий Тумайкин. Реализация интерфейса USB в микроконтроллерных устройствах. //СОВРЕМЕННАЯ ЭЛЕКТРОНИКА. – 2007 г, № 2, с. 34-37.
13. Дмитрий Чекунов. Практикум программиста USB-устройств. Часть 1. EZ-USB FX2LP – универсальное USB-решение. //СОВРЕМЕННАЯ ЭЛЕКТРОНИКА. – 2005 г, № 4, с. 70-77.
14. Дмитрий Чекунов. Практикум программиста USB-устройств. Часть 2. Разработка аппаратно-программного ядра USB-устройства. //СОВРЕМЕННАЯ ЭЛЕКТРОНИКА. – 2005 г, № 5, с. 66-73.
15. Дмитрий Чекунов. Практикум программиста USB-устройств. Часть 2. Разработка аппаратно-программного ядра USB-устройства. //СОВРЕМЕННАЯ ЭЛЕКТРОНИКА. – 2005 г, № 6, с. 66-74.
16. Дмитрий Чекунов. Практикум программиста USB-устройств. Часть 3. Расширение функций ядра USB-устройства. //СОВРЕМЕННАЯ ЭЛЕКТРОНИКА. – 2006 г, № 2, с. 70-77.
17. ГОСТ 2.104 – 68 Единая система конструкторской документации. Основные надписи. Введ. 01.01.71. – 9с. – Группа Т52.
18. ГОСТ 2.316-68 Единая система конструкторской документации. Правила нанесения на чертежах надписей, технических требований и таблиц. Введ. 01.01.71. – 7с. – Группа Т52.
19. ГОСТ 2.702-75 Единая система конструкторской документации. Правила выполнения электрических схем. Введ. 01.07.77. – 22с. – Группа Т52.
20. ГОСТ 2.605-68 Единая система конструкторской документации. Плакаты учебно-технические. Введ. 01.01.71. – 10с. – Группа Т52.
21. ГОСТ 2.759-82 Единая система конструкторской документации. Обозначения условные графические в схемах. Элементы аналоговой техники. Введ. 01.07.83. – 13с. – Группа Т52.
22. ГОСТ 12.0.004 – 90 ССБТ. Организация обучения безопасности труда. Введ. 01.07.91 – 14с. – Группа Т58.
23. ГОСТ 12.1.005 – 88 ССБТ. Общие санитарно-гигиенические требования к воздуху рабочей зоны. Введ. 01.01.89. – 49с. – Группа Т58.
24. СНиП 2.04.05-91 Строительные нормы и правила. Отопление, вентиляция и кондиционирование. Введ. 01.01.92. – 71с.
25. www.atmel.com.
26. www.bluetooth.org.
27. www.elcp.ru.
28. www.f2move.com.
29. www.maxim-ic.com.
30. www.micronas.com.
31. www.national.com.
32. www.samsung.com.
33. www.st.com.
34. www.vlsi.fi.
Приложение A
Текст программы
AT91UsbSounCard.cpp
// AT91UsbSounCard.cpp // Generated by DriverWizard version DriverStudio 2.0.0 (Build 526)
// Requires Compuware's DriverWorks classes
#define VDW_MAIN
#include <vdw.h>
#include <kusb.h>
#include "AT91UsbSounCard.h"
#include "AT91UsbSounCardDevice.h"
#pragma hdrstop("AT91UsbSounCard.pch")
POOLTAG DefaultPoolTag('19TA');
KTrace t("AT91UsbSounCard");
#pragma code_seg("INIT")
DECLARE_DRIVER_CLASS(AT91UsbSounCard, NULL)
NTSTATUS AT91UsbSounCard::DriverEntry(PUNICODE_STRING RegistryPath){
t << "In DriverEntry\n";
KRegistryKey Params(RegistryPath, L"Parameters");// Open the "Parameters" key under the driver
if ( NT_SUCCESS(Params.LastError()) ){
#if DBG
ULONG bBreakOnEntry = FALSE;
Params.QueryValue(L"BreakOnEntry", &bBreakOnEntry);
// Read "BreakOnEntry" value from registry
if (bBreakOnEntry) DbgBreakPoint();// If requested, break into debugger
#endif
LoadRegistryParameters(Params);// Load driver data members from the registry}
m_Unit = 0;
return STATUS_SUCCESS;}
void AT91UsbSounCard::LoadRegistryParameters(KRegistryKey &Params){
m_bBreakOnEntry = FALSE;
Params.QueryValue(L"BreakOnEntry", &m_bBreakOnEntry);
t << "m_bBreakOnEntry loaded from registry, resulting value: [" << m_bBreakOnEntry << "]\n";}
// End INIT section
#pragma code_seg()
NTSTATUS AT91UsbSounCard::AddDevice(PDEVICE_OBJECT Pdo){
t << "AddDevice called\n";
AT91UsbSounCardDevice * pDevice = new (
static_cast<PCWSTR>(KUnitizedName(L"AT91UsbSounCardDevice", m_Unit)),
FILE_DEVICE_UNKNOWN, NULL, 0, DO_DIRECT_IO | DO_POWER_PAGABLE )
AT91UsbSounCardDevice(Pdo, m_Unit);
if (pDevice == NULL){
t << "Error creating device AT91UsbSounCardDevice"<< (ULONG) m_Unit << EOL;
return STATUS_INSUFFICIENT_RESOURCES;}
NTSTATUS status = pDevice->ConstructorStatus();
if ( !NT_SUCCESS(status) ){
t << "Error constructing device AT91UsbSounCardDevice"
<< (ULONG) m_Unit << " status " << (ULONG) status << EOL;
delete pDevice;}
else{
m_Unit++;
pDevice->ReportNewDevicePowerState(PowerDeviceD0);}
return status;}
AT91UsbSounCard.h
// AT91UsbSounCard.h // Generated by DriverWizard version DriverStudio 2.0.0 (Build 526)
// Requires Compuware's DriverWorks classes
#ifndef AT91UsbSounCard_h
#define AT91UsbSounCard_h
#define EOL "\n"
extern KTrace t;
class AT91UsbSounCard : public KDriver
{SAFE_DESTRUCTORS
public:
virtual NTSTATUS DriverEntry(PUNICODE_STRING RegistryPath);
virtual NTSTATUS AddDevice(PDEVICE_OBJECT Pdo);
void LoadRegistryParameters(KRegistryKey &Params);
int m_Unit;
// The following data members are loaded from the registry during DriverEntry
ULONG m_bBreakOnEntry;};
#endif // AT91UsbSounCard_h
AT91UsbSounCardDevice.cpp
// AT91UsbSounCardDevice.cpp Implementation of AT91UsbSounCardDevice device class
// Generated by DriverWizard version DriverStudio 2.0.0 (Build 526)
// Requires Compuware's DriverWorks classes
#pragma warning(disable:4065) // Allow switch statement with no cases
#include <vdw.h>
#include <kusb.h>
#include "AT91UsbSounCardDeviceinterface.h"
#include "AT91UsbSounCard.h"
Другие рефераты на тему «Программирование, компьютеры и кибернетика»:
- 2683 Перспективы развития вычислительных систем. Квантовые компьютеры и нейровычислители
- Интеллектуальные информационные технологии и системы - генетические алгоритмы
- Разработка веб-приложения для информационного обеспечения учебного процесса (видеокасты)
- Математическое моделирование технического объекта
- Развитие глобальной сети Internet
Поиск рефератов
Последние рефераты раздела
- Основные этапы объектно-ориентированного проектирования
- Основные структуры языка Java
- Основные принципы разработки графического пользовательского интерфейса
- Основы дискретной математики
- Программное обеспечение системы принятия решений адаптивного робота
- Программное обеспечение
- Проблемы сохранности информации в процессе предпринимательской деятельности