1. 佳能fd镜头和nfd的区别
有
佳能的手动镜头卡口是FD,后期为NFD
手动有,可分为两种:手动变焦(手动交接你与被拍摄物体之间的距离,就是通常说的拉近,拉远。单反相机的镜头都能手动)第二种,移轴镜头(就是可以认为移动镜头的方位,这也是单反相机的),数码相机的镜头基本上不能手动
2. 佳能fd镜头推荐
佳能FD镜头是指佳能采用EF口以前的老卡口镜头,
3. 佳能fd和fl
方法
01
按住“下降”键,上电,显示“FA”代码,释放“下降”键,进入调节模式。
按“开关”键进入参数调节模式,按
“上升”或“下降”键循环选择要调整的参数,按“开关”键进入参数调整状态,通过“上升”或“下降”键进行调节,再次按“开关”键保存设置。
02
显示FA,设置气源种类,00为液化气,01为天然气;
显示PH,设置比例阀最大二次压,按“开关”键后进入调整状态
03
显示PL,设置比例阀最小二次压,按“开关”键后进入调整状态;
显示dH,设置比例阀点火二次压,按“开关”键后进入调整状态;
方法/步骤2
显示nE,设置定时开关,on为有定时,of为无定时;
显示qU,按“开/关”键确认后,保存设置参数并退出设置。
4. 佳能nfd镜头和fd镜头
下面的debug信息来自与/tmp/telenet.debug文件的一部分。
是客户端按下字母e后发生的四个阶段。这篇主要分析第一阶段和第二阶段。
也就是telrcv函数的主要的功能。
td: netread 1 chars
nd: 65 e
td: ptyflush 1 chars
pd: 65 e
td: ptyread 2 chars
pd: 0065 .e
td: netflush 1 chars
下面的是telnetd.c里面最主要的一个函数,其中里面的for循环也是理解telnetd的工作机制最主要的部分。
int
telnetd_run (void)
{
...
for (;;)
{
fd_set ibits, obits, xbits;
register int c;
if (net_input_level () < 0 && pty_input_level () < 0)
break;
FD_ZERO (&ibits);
FD_ZERO (&obits);
FD_ZERO (&xbits);
if (net_output_level () || pty_input_level () > 0)
FD_SET (net, &obits);
else
FD_SET (pty, &ibits);
if (pty_output_level () || net_input_level () > 0)
FD_SET (pty, &obits);
else
FD_SET (net, &ibits);
if (!SYNCHing)
FD_SET (net, &xbits);
if ((c = select (nfd, &ibits, &obits, &xbits, NULL)) <= 0)
{
if (c == -1 && errno == EINTR)
continue;
sleep (5);
continue;
}
if (FD_ISSET (net, &xbits))
SYNCHing = 1;
if (FD_ISSET (net, &ibits))
{
net_read (); 这里是第一阶段执行的函数
}
if (FD_ISSET (pty, &ibits))
{
if (pty_read () <= 0)
break;
c = pty_get_char (1);
#if defined TIOCPKT_IOCTL
if (c & TIOCPKT_IOCTL)
{
pty_get_char (0);
copy_termbuf ();
localstat ();
}
#endif
if (c & TIOCPKT_FLUSHWRITE)
{
static char flushdata[] = { IAC, DM };
pty_get_char (0);
netclear ();
net_output_datalen (flushdata, sizeof (flushdata));
set_neturg ();
DEBUG (debug_options, 1, printoption ("td: send IAC", DM));
}
if (his_state_is_will (TELOPT_LFLOW)
&& (c & (TIOCPKT_NOSTOP | TIOCPKT_DOSTOP)))
{
int newflow = (c & TIOCPKT_DOSTOP) ? 1 : 0;
if (newflow != flowmode)
{
net_output_data ("%c%c%c%c%c%c",
IAC, SB, TELOPT_LFLOW,
flowmode ? LFLOW_ON : LFLOW_OFF, IAC, SE);
}
}
pty_get_char (0);
}
while (pty_input_level () > 0)
{
if (net_buffer_is_full ())
break;
c = pty_get_char (0);
if (c == IAC)
net_output_byte (c);
net_output_byte (c);
if (c == '\r' && my_state_is_wont (TELOPT_BINARY))
{
if (pty_input_level () > 0 && pty_get_char (1) == '\n')
net_output_byte (pty_get_char (0));
else
net_output_byte (0);
}
}
if (FD_ISSET (net, &obits) && net_output_level () > 0)
netflush ();
if (net_input_level () > 0)
telrcv ();
if (FD_ISSET (pty, &obits) && pty_output_level () > 0)
ptyflush (); 这里是第二阶段执行的函数。
if (pending_sigchld) {
if (net_output_level () > 0)
netflush ();
cleanup (SIGCHLD);
}
}
net_read函数分析。这个函数是接收来自net的一个字符。
ncc是个数,用到的netibuf,网络输入缓冲区。可以这么理解。
netip是网络输入缓冲区的指针。
int
net_read (void)
{
ncc = read (net, netibuf, sizeof (netibuf));
if (ncc < 0 && errno == EWOULDBLOCK)
ncc = 0;
else if (ncc == 0)
{
syslog (LOG_INFO, "telnetd: peer died");
cleanup (0);
}
else if (ncc > 0)
{
netip = netibuf;
DEBUG (debug_report, 1,
debug_output_data ("td: netread %d chars\r\n", ncc));
DEBUG (debug_net_data, 1, printdata ("nd", netip, ncc));
}
return ncc;
}
telrcv函数是一个关键的函数,在文件state.c中定义。
和telnet协议状态机有关。
比如如果第一个字节是FF也就是IAC,那么下面的字节是命令字节。命令选项字节。
net_get_char函数和pty_output_byte函数是理解telrcv函数的主要的地方。
其他的语句都和状态机有关。这两个函数是取一个字符,函数放到pty缓冲区里。
void
telrcv (void)
{
register int c;
static int state = TS_DATA;
while ((net_input_level () > 0) & !pty_buffer_is_full ())
{
c = net_get_char (0);
#ifdef ENCRYPTION
if (decrypt_input)
c = (*decrypt_input) (c);
#endif
switch (state)
{
case TS_CR:
state = TS_DATA;
if ((c == 0) || (c == '\n'))
break;
case TS_data:
if (c == IAC)
{
state = TS_IAC;
break;
}
if ((c == '\r') && his_state_is_wont (TELOPT_BINARY))
{
int nc = net_get_char (1);
#ifdef ENCRYPTION
if (decrypt_input)
nc = (*decrypt_input) (nc & 0xff);
#endif
if (linemode
&& net_input_level () > 0
&& (('\n' == nc) || (!nc && tty_iscrnl ())))
{
net_get_char (0);
c = '\n';
}
else
{
#ifdef ENCRYPTION
if (decrypt_input)
(*decrypt_input) (-1);
#endif
state = TS_CR;
}
}
pty_output_byte (c);
break;
case TS_IAC:
gotiac:
switch (c)
{
case IP:
DEBUG (debug_options, 1, printoption ("td: recv IAC", c));
send_intr ();
break;
case BREAK:
DEBUG (debug_options, 1, printoption ("td: recv IAC", c));
send_brk ();
break;
int
net_get_char (int peek)
{
if (peek)
return *netip;
else if (ncc > 0)
{
ncc--;
return *netip++ & 0377;
}
return 0;
}
void
pty_output_byte (int c)
{
*pfrontp++ = c;
}
这里是第二阶段相关的函数。比较好理解。
主要的功能是把缓冲区的字符放到/dev/pty里面
a b c d e f g
| |
pbackp pfrontp
上面的pfrontp指针指向的是字母g,如果再输入一个字符h,那么pfrontp指针就指向字符h。
上面的pbackp指针指向的是字母b,如果要拿出一个字符,那么应该先拿出字符b,然后是c,再然后是d。
void
ptyflush (void)
{
int n;
if ((n = pfrontp - pbackp) > 0)
{
DEBUG (debug_report, 1,
debug_output_data ("td: ptyflush %d chars\r\n", n));
DEBUG (debug_pty_data, 1, printdata ("pd", pbackp, n));
syslog (LOG_NOTICE, "ptyflush pbackp = %s", pbackp);
n = write (pty, pbackp, n);
}
if (n < 0)
{
if (errno == EWOULDBLOCK || errno == EINTR)
return;
cleanup (0);
}
pbackp += n;
if (pbackp == pfrontp)
pbackp = pfrontp = ptyobuf;
}
5. 佳能fd镜头是全画幅吗
佳能FD口是佳能公司旧款35mm单反相机所使用的镜头接口,现已停产。FD口的镜头不能直接用于600d单反上,因为600d采用的是EF/EF-S接口,需要使用适配环才能使用FD口镜头。但是,适配环可能会影响镜头的对焦,光圈等性能,因此建议使用EF/EF-S接口的佳能镜头或其他品牌相应的镜头。
6. 佳能fd和ef
佳能FD是佳能手动镜头的卡口,老式的佳能手动胶片单反头。fd口的镜头不可以用ef单反上。
佳能EF口的镜头和FD口的镜头,可以看成自动对焦(EOS)时代和手动对焦时代的两类镜头,卡口互不通用。FD有自锁机构,一转就好,确实有利用户使用,关键时刻节省不少时间。
7. 佳能fl和fd镜头有什么区别
佳能现在的机身卡口均为EOS, 对应的镜头有EF和EFS镜头,前者为全画幅设计,但可以用于APS画幅机身(原因在于机器卡口均为EOS),后者为针对APS画幅设计,可以用到全画幅机器上,但因为像场不足会有硬暗角(成像圈)。
尼康现在的卡口为F卡口,是个古老的卡口了,不断改进使得其可以支持从手动到自动的一系列镜头。对应的镜头有两种,一种也是为全画幅设计。另一种在镜头名字前冠以DX表示为APS设计。
尼康卡口还有一个特殊的地方,就是其低端机器(D40/D40x/D60/D5000/D3000)不支持非超声波马达的镜头,原因在于在卡口处省略了对焦电机驱动。其中低端机器(D80/D90/D50/D70/D70s)不支持AI/AIS等手动头自动测光。
8. 佳能fd与nfd卡口通用吗
NFD 查询航段特价,例:NFD SZXSHA/ZH此种查法主要查询航段之间承运的航空公司是否有特价!
FD 查询航段价格,例:FD SZXSHA/ZH此种查法主要查询航段之间的全价、折扣价及各折扣对应的舱位;一般都是查询航段后,做FD1、FD2、FD3等PAT:A 查询特价此种查法是验证NFD所查询的特价是否有效!现在各航空公司都扩展了,把PAT:A作为打票时输入FC、FN、FP项的快捷方式。近两年内学打票的操作人员,几乎都不会手工输入FC、FN、FP项,都是用PAT:A自动生成各项!FD指令与AV指令一样,是最基础的!NFD是各正规售票处必用的指令,只有正规配置才能用NFD查询特价!
9. 佳能fd镜头和ef镜头对比
必须用带校正镜片的转接环,在f/4或者更大光圈情况下,成像惨不忍睹 个人建议购买EF口的。
FD口镜头非常尴尬。如果是红圈头,可以找找老师父花个300多改一下口,变成带合焦提示的EF口镜头,如果是普通镜头那就留着当摆设吧
10. 佳能fd镜头哪个画质好
升及标头为fd501.4ssc或1.2l
其它看你拍什么,给几个不错的选择:
风光:fd241.4l或f2及f2.8、282.8。
人文:fd35f2或f2.8。
人像:fd851.2l或1.8、fd135f2或2.8。
长焦:fd2002.8。
以上,供参考。
11. 佳能fd镜头是什么卡口
S-卡口:仿制Leica螺口。内径37.9mm,外径38.9mm,螺距0.9769mm,像场定位距离(即卡口法兰盘与胶卷平面的距离)28.8mm,26螺纹/英寸。很难见到的镜头种类,大家稍微知道一下就行。
R-卡口:用于Canonflex系列照相机。三爪式(套筒型)插刀卡口。内径48mm,外径51.3mm,像场定位距离42mm。
FL-卡口:FL-系列镜头适用于Canon FX系列照相机。机械指标同R系列,但光阑机构改进了,使光圈能够自动工作。
FD-卡口:FD系列镜头适用Canon F-1、FTb、A系列和T系列照相机。
机械指标同R系列,增加了几个新的拨杆和顶针,如自动光圈控制拨杆、光圈信号顶针(用来传输全开光圈的F值)、光圈信号拨杆、AE/手动曝光开关顶针等NEW-FD-卡口:机械指标同R系列。固定机构从螺纹式改成同时安装/闭锁式,使镜头装卸更快。其他的同FD卡口。
EF-卡口:EF-系列镜头用于Canon EOS系列照相机。三爪式插刀卡口,同时安装/闭锁式。内径54mm,外径65mm,像场定位距离44mm,安装旋转角度60度,有8个信号传输触点。
查看更多关于【技巧】的文章