eclipse怎么导入idea从单片机导入数据

什么时候能写出优雅且高质量的代码...
eclipse配置文件的导出
之前不知道eclipse的配置可以导出,然后每次新建一个工作空间就要再重新配置一边好,说多了都是泪,看正文吧。
可以看一下之前这篇
那怎样将将配置导出然后导入新的工作空间呢?
File-&Export-&General-&Preference,这样可以导出epf文件,新的工作空间中可以用Import导入该配置文件,这个方法的确可以导入绝大多数的配置,但是并不全。
将workspace/.metadata/.plugins/org.eclipse.core.runtime中的.settings文件夹拷贝出来,里面就是所有的配置文件,新建工作空间的时候将该.settings文件夹替换掉新工作空间中的.settings文件夹即可。
没有更多推荐了,
加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!&&|&&
LOFTER精选
网易考拉推荐
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
阅读(2518)|
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
历史上的今天
在LOFTER的更多文章
loftPermalink:'',
id:'fks_',
blogTitle:'用Eclipse做单片机开发(eclipse安装 keil MDK图解)',
blogAbstract:'keil是开款伟大的单片机开发程序,然而它的编辑器实在是垃圾透了。用过eclipse的同学一定知道用它来写代码有多方便。现在我们有了一个教程,可以教你用eclipse开发单片机程序。这个教程适用于任何使用keil开发的单片机,单板机,包括51、ARM等。',
blogTag:'',
blogUrl:'blog/static/',
isPublished:1,
istop:false,
modifyTime:0,
publishTime:6,
permalink:'blog/static/',
commentCount:0,
mainCommentCount:0,
recommendCount:0,
bsrk:-100,
publisherId:0,
recomBlogHome:false,
currentRecomBlog:false,
attachmentsFileIds:[],
groupInfo:{},
friendstatus:'none',
followstatus:'unFollow',
pubSucc:'',
visitorProvince:'',
visitorCity:'',
visitorNewUser:false,
postAddInfo:{},
mset:'000',
remindgoodnightblog:false,
isBlackVisitor:false,
isShowYodaoAd:false,
hostIntro:'',
hmcon:'0',
selfRecomBlogCount:'0',
lofter_single:''
{list a as x}
{if x.moveFrom=='wap'}
{elseif x.moveFrom=='iphone'}
{elseif x.moveFrom=='android'}
{elseif x.moveFrom=='mobile'}
${a.selfIntro|escape}{if great260}${suplement}{/if}
{list a as x}
推荐过这篇日志的人:
{list a as x}
{if !!b&&b.length>0}
他们还推荐了:
{list b as y}
转载记录:
{list d as x}
{list a as x}
{list a as x}
{list a as x}
{list a as x}
{if x_index>4}{break}{/if}
${fn2(x.publishTime,'yyyy-MM-dd HH:mm:ss')}
{list a as x}
{if !!(blogDetail.preBlogPermalink)}
{if !!(blogDetail.nextBlogPermalink)}
{list a as x}
{if defined('newslist')&&newslist.length>0}
{list newslist as x}
{if x_index>7}{break}{/if}
{list a as x}
{var first_option =}
{list x.voteDetailList as voteToOption}
{if voteToOption==1}
{if first_option==false},{/if}&&“${b[voteToOption_index]}”&&
{if (x.role!="-1") },“我是${c[x.role]}”&&{/if}
&&&&&&&&${fn1(x.voteTime)}
{if x.userName==''}{/if}
网易公司版权所有&&
{list x.l as y}
{if defined('wl')}
{list wl as x}{/list}关于Seriesport串口通信实现单片机与PC之间数据交互
现在大部分串口助手都是使用的MFC自带的串口类,但是附在界面上使用受到了很大限制,所以不断搜寻查找,找到了seriesport这个类,使用方便,特别适用于单片机与PC之间的相互传输数据使用。现在项目主要用在1.控制继电器定时开关,单线结构光需要把细线提取出来,有两种办法,一种是加一个滤光片,直接留下激光线即可(滤光片采用的卓美30.5mm,850波段的红外滤光片,相机采用pointgrey的Flea3 FL3-U3-13Y3M)。一种方法是拍一张无激光图片,然后给单片机发送信号,单片机接收到信号闭合继电器,再拍一张有激光的图案。这时就需要串口通信,可实现自动拍照采集数据。 2.控制6掌灯亮灭配合相机拍照,为了快速获得图片,也需要进行串行口通信。接下来把程序附在下边,只是改了改别人的程序,需要的可以拿去用,已经测试通过#include &iostream&
#include &cstdlib&
#include &windows.h&
HANDLE hCOVERLAPPED OverLCOMSTAT CDWORD dwCommEbool OpenPort();
//打开串口
bool SetupDCB(int rate_arg);
bool SetupTimeout(DWORD ReadInterval, DWORD ReadTotalMultiplier, DWORD ReadTotalConstant, DWORD WriteTotalMultiplier, DWORD WriteTotalConstant);
//设置超时
void ReciveChar();
//接收字符
bool WriteChar(char* szWriteBuffer, DWORD dwSend);
//发送字符
bool OpenPort(){ hComm = CreateFile(L"COM4",
GENERIC_READ | GENERIC_WRITE,
OPEN_EXISTING,
FILE_FLAG_OVERLAPPED,
0); if (hComm == INVALID_HANDLE_VALUE)
return FALSE; else
}bool SetupDCB(int rate_arg){ DCB memset(&dcb, 0, sizeof(dcb)); if (!GetCommState(hComm, &dcb))//获取当前DCB配置
return FALSE; } dcb.DCBlength = sizeof(dcb); /* ---------- Serial Port Config ------- */ dcb.BaudRate = rate_ dcb.Parity = NOPARITY; dcb.fParity = 0; dcb.StopBits = ONESTOPBIT; dcb.ByteSize = 8; dcb.fOutxCtsFlow = 0; dcb.fOutxDsrFlow = 0; dcb.fDtrControl = DTR_CONTROL_DISABLE; dcb.fDsrSensitivity = 0; dcb.fRtsControl = RTS_CONTROL_DISABLE; dcb.fOutX = 0; dcb.fInX = 0; dcb.fErrorChar = 0; dcb.fBinary = 1; dcb.fNull = 0; dcb.fAbortOnError = 0; dcb.wReserved = 0; dcb.XonLim = 2; dcb.XoffLim = 4; dcb.XonChar = 0x13; dcb.XoffChar = 0x19; dcb.EvtChar = 0; if (!SetCommState(hComm, &dcb)) {
}bool SetupTimeout(DWORD ReadInterval, DWORD ReadTotalMultiplier, DWORD ReadTotalConstant, DWORD WriteTotalMultiplier, DWORD WriteTotalConstant){ COMMTIMEOUTS timeouts.ReadIntervalTimeout = ReadI timeouts.ReadTotalTimeoutConstant = ReadTotalC timeouts.ReadTotalTimeoutMultiplier = ReadTotalM timeouts.WriteTotalTimeoutConstant = WriteTotalC timeouts.WriteTotalTimeoutMultiplier = WriteTotalM if (!SetCommTimeouts(hComm, &timeouts)) {
}void ReciveChar(){ bool bRead = TRUE; bool bResult = TRUE; DWORD dwError = 0; DWORD BytesRead = 0;;
char RXB[11];
memset(RXB, 0, sizeof(RXB));
bResult = ReadFile(hComm,
//通信设备(此处为串口)句柄,由CreateFile()返回值得到
//指向接收缓冲区
//指明要从串口中读取的字节数
&BytesRead,
&OverLapped);
//OVERLAPPED结构
//因为是overlapped操作,ReadFile会将读文件请求放入读队列之后立即返回(false),
//而不会等到文件读完才返回(true)
if (bResult)
std::cout && RXB && std::
//文件真是被读完了,rc为true
// 或当数据被放入cache中,或操作系统认为它可以很快速地取得数据,rc为true
if (GetLastError() == ERROR_IO_PENDING)
{//当错误是ERROR_IO_PENDING,那意味着读文件的操作还在进行中
//等候,直到文件读完
GetOverlappedResult(hComm, &OverLapped, &BytesRead, TRUE);
std::cout && RXB && std::
PurgeComm(hComm, PURGE_RXCLEAR | PURGE_TXCLEAR | PURGE_RXABORT | PURGE_TXABORT);
}bool WriteChar(char* szWriteBuffer, DWORD dwSend){ bool bWrite = TRUE; bool bResult = TRUE; DWORD BytesSent = 0; HANDLE hWriteEvent = NULL; ResetEvent(hWriteEvent); if (bWrite) {
OverLapped.Offset = 0;
OverLapped.OffsetHigh = 0;
bResult = WriteFile(hComm,
//通信设备句柄,CreateFile()返回值得到
szWriteBuffer,
//指向写入数据缓冲区
//设置要写的字节数
&BytesSent,
&OverLapped);
//指向异步I/O数据
if (!bResult)
DWORD dwError = GetLastError();
switch (dwError)
case ERROR_IO_PENDING:
BytesSent = 0;
bWrite = FALSE;
} } if (!bWrite) {
bWrite = TRUE;
bResult = GetOverlappedResult(hComm,
&OverLapped,
&BytesSent,
if (!bResult)
std::cout && "GetOverlappedResults() in WriteFile()" && std::
} } if (BytesSent != dwSend) {
std::cout && "WARNING: WriteFile() error.. Bytes Sent:" && BytesSent && "; Message Length: " && strlen((char*)szWriteBuffer) && std:: } return TRUE;}int main(){ if (OpenPort())
std::cout && "Open port success" && std:: if (SetupDCB(9600))
std::cout && "Set DCB success" && std:: if (SetupTimeout(0, 0, 0, 0, 0))
std::cout && "Set timeout success" && std:: PurgeComm(hComm, PURGE_RXCLEAR | PURGE_TXCLEAR | PURGE_RXABORT | PURGE_TXABORT); for (int i = 0; i & 20; i++){
if (i % 2 == 0){
char a[] = "0";
WriteChar(a, 1);
Sleep(1000);
char a[] = "1";
WriteChar(a, 1);
Sleep(1000);
ReciveChar();
} CloseHandle(hComm); return EXIT_SUCCESS;}
没有更多推荐了,
加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!eclipse导入已经存在workspace里的工程
按照file-&import-&generalexisting project in workspace-&browse,选择了要导入的工程或者整个workspace,这时下一步是灰色的,点不了,显示Some projects cannot be imported because they already exist in the workspace.
只需要把copy to worksapce的勾去掉,然后点击refresh一下,就可以了。
没有更多推荐了,
加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!为什么我的eclipse无法自动导入包!-CSDN论坛
为什么我的eclipse无法自动导入包!
快捷键ctrl&shift&o&&和点菜单的organize&imports&都没反应啊
程序代码:
public&class&TestSwitchDemo&{
public&static&void&main(String[]&args)&{
scanner&input&=new&scanner(system.in)
scanner&是不是要改成Scanner?
引用&1&楼&oh_Maxy&的回复:scanner&是不是要改成Scanner?

我要回帖

更多关于 eclipse怎么导入工程 的文章

 

随机推荐